Upgrade issues 2021 / 11.1.100.26 to any major release above

At the end of my rope with Epicor support, they are not willing to investigate this.
While running Upgrade Kinetic Database I am getting an error with executing ModifyLangOrg.sql

image

These commands were suggested by Epicor
DROP FULLTEXT INDEX ON [Ice].[LangOrg];
DROP FULLTEXT CATALOG LangOrg;

Drop fulltext catalog will not run without error in SQL management studio.


I have got the upgrade to complete by removing the SQL script from the upgrade sequence, but I do not know the purpose of this script, and imagine it is important. It contains the same commands inside the script.

image

ModifyLangOrg.sql (7.0 KB)

Any ideas how to remedy this?
Things i’ve tried:

  • New Server 2019 Windows VM for APP and SQL
  • upgrading to latest patch first (11.1.100.38)
  • regenerate data model before backup
  • 2021.2 Kinetic
  • 2022.1 Kinetic
  • 2022.2 Kinetic

I can create the demo database and upgrade it, so it must be a database problem. Epicor does not believe me, and says they are able to load my database. Also its been 3 months, not super happy with them.

Have you asked chatgpt how to resolve the error? Sometimes the answer is worthless but I have been surprised at some of the useful tips I’ve gotten from trying this.

Support says they were able to load your original database and convert it successfully with no errors? If they haven’t done that, that is what I would be pushing them to do.

As an extreme last resort you could pay for the cloud conversion (aka cirrus upgrade) - then its their problem to provide you with a successfully upgraded database. But that isn’t a free solution.

What are the properties of the DB?

What about the index itself?

Did you try?
Run the following code to determine which table is using the Full-Text Index:
SELECT name, ftcatid FROM sysobjects WHERE ftcatid > 0

After running this command, tables that use Full-Text will be listed.

Remove the full-text index metadata for the related table with the below script.
EXEC sp_fulltext_table ‘table_name’, ‘drop’

You can now remove the Full-Text Catalog with the following code:
DROP FULLTEXT CATALOG fulltext_catalog_name

SQL compatibility would be the only difference i spot.


I think i’ve tried this before but here are the results.
3
4
5

ChatGPT has some good ideas, its better than support so far haha.

“If you still encounter an error stating that you cannot drop the full-text catalog, it could be because there are still references to the catalog in the system tables.”

" To find catalog references in SQL Server, you can use the following query:
SELECT * FROM sys.fulltext_catalogs
"

Sad but true. I desperately want Epicor to implement ChatGPT or similar and hook it up to their KB/service now/jira databases. It would do a million times better than the existing Tier 1 support and save me so much time and frustration. I see basically every other company jumping on this bandwagon. Come on Epicor!!!

This is the error when running ModifyLangOrg.SQL in sql mangement studio.

It would be ideal to regenerate this table but I would imagine epicor would have to provide a fix to do that. Its something to do with Language or Locale.

Did you try

Drop fulltext catalog LangOrg
(Without the single quote)

Same,
Thanks anyways.

In this specific situation, one could drop all existing fulltext indexes and catalogs before an attempted test Kinetic upgrade and recreate them after the upgrade process completes. There may be errors running the recreation scripts afterward if the upgrade process creates one of the indexes if it doesn’t exist, but any of those errors could be safely ignored.

--execute the results of each statement after enabling "Results to Text" in SSMS before upgrade
SELECT 'DROP FULLTEXT INDEX ON ' + QUOTENAME(OBJECT_SCHEMA_NAME([T1].OBJECT_ID)) + '.' + QUOTENAME(OBJECT_NAME([T1].OBJECT_ID)) + ';'
FROM [SYS].[FULLTEXT_INDEXES] AS [T1];

SELECT 'DROP FULLTEXT CATALOG ' + [T1].[NAME] + ';'
FROM [SYS].[FULLTEXT_CATALOGS] AS [T1];

--execute the following after the upgrade completes
--"C:\Program Files (x86)\Common Files\Epicor Software\Database Manager Extensions\[release]\DB Migration\DB Scripts\Erp Scripts\ERP_FullTextIndexes.sql"
--"C:\Program Files (x86)\Common Files\Epicor Software\Database Manager Extensions\[release]\DB Migration\DB Scripts\Ice Scripts\ICE_FullTextIndexes.sql"
2 Likes

I’m excited to try this. Thank you!.
I’ve been asking ChatGPT how to force delete the catalog for a while before i seen this.
I’ll post results of course.

Is it possible to run the following query in your database that has the error?

select schema_name(o.schema_id), object_name(i.object_id)
from sys.fulltext_indexes i
join sys.objects o on o.object_id = i.object_id
and name = ‘LangOrg’

This will allow us to see who owns the LangOrg table.

image

Thanks! Now that the query below return the value 1?

SELECT 1
FROM sys.objects o, sys.fulltext_indexes i
WHERE o.object_id = i.object_id
AND SCHEMA_NAME(schema_id) = ‘Ice’
AND OBJECT_NAME(o.object_id) = ‘LangOrg’

yes it does

Now, please run the below query.

IF EXISTS
(SELECT 1
FROM sys.objects o, sys.fulltext_indexes i
WHERE o.object_id = i.object_id
AND SCHEMA_NAME(schema_id) = ‘Ice’
AND OBJECT_NAME(o.object_id) = ‘LangOrg’)
DROP FULLTEXT INDEX on Ice.LangOrg
GO

When done, please re-run the query below.

SELECT 1
FROM sys.objects o, sys.fulltext_indexes i
WHERE o.object_id = i.object_id
AND SCHEMA_NAME(schema_id) = ‘Ice’
AND OBJECT_NAME(o.object_id) = ‘LangOrg’

This query should not return a result.

image
image

image

I think the Catalog might still be there, i’ll investigate.