error: code too large for try statement + java heap [message #1861217] |
Fri, 29 September 2023 21:20  |
Eclipse User |
|
|
|
Hi,
I am using Xtext to generate java code for a huge mysql grammar. I am facing a java heap error, even after increasing the Xms/Xmx size. I tried ti hide a subset of my big set of keywords which made my generation goes smoothly. However, when I use Antlrworks to debug my grammar I end up with a "code too large for try statement" error. Splitting my grammar doesn't work either. Let's say I have a rule with a big set of keywords which can be IDs named KeywordsCanBeId:
1- Should I define these keywords as rules or terminals?
2- Should I split this rule to subrules.? and how should I chose the number of keyword alternatives in each subrule?
3- What is the best way to get rid of these issues when dealing with rules that containes a big set of keyword alternatives (R:A|B|C|.....)?
thank you for your help
|
|
|
|
Re: error: code too large for try statement + java heap [message #1861224 is a reply to message #1861223] |
Sat, 30 September 2023 13:59   |
Eclipse User |
|
|
|
I am not sure whether splitting my grammar is necessary or not. Here is the part of the grammar (i.e., big rules) where the generation results in a java heap space exception:
Quote:
KeywordsCanBeId :
ACCOUNT | ACTION | ADMIN | AFTER | AGGREGATE | ALGORITHM | ANY
| AT | AUDIT_ADMIN | AUTHORS | AUTOCOMMIT | AUTOEXTEND_SIZE
| AUTO_INCREMENT | AVG | AVG_ROW_LENGTH | ATTRIBUTE | BACKUP_ADMIN | BEGIN | BINLOG | BINLOG_ADMIN | BINLOG_ENCRYPTION_ADMIN | BIT | BIT_AND | BIT_OR | BIT_XOR
| BLOCK | BOOL | BOOLEAN | BTREE | BUCKETS | CACHE | CASCADED | CHAIN | CHANGED
| CHANNEL | CHECKSUM | PAGE_CHECKSUM | CATALOG_NAME | CIPHER
| CLASS_ORIGIN | CLIENT | CLONE_ADMIN | CLOSE | CLUSTERING | COALESCE | CODE
| COLUMNS | COLUMN_FORMAT | COLUMN_NAME | COMMENT | COMMIT | COMPACT
| COMPLETION | COMPRESSED | COMPRESSION | CONCURRENT | CONDITION | CONNECT
| CONNECTION | CONNECTION_ADMIN | CONSISTENT | CONSTRAINT_CATALOG | CONSTRAINT_NAME
| CONSTRAINT_SCHEMA | CONTAINS | CONTEXT
| CONTRIBUTORS | COPY | COUNT | CPU | CURRENT | CURRENT_USER | CURSOR_NAME
| DATA | DATAFILE | DEALLOCATE
| DEFAULT | DEFAULT_AUTH | DEFINER | DELAY_KEY_WRITE | DES_KEY_FILE | DIAGNOSTICS | DIRECTORY
| DISABLE | DISCARD | DISK | DO | DUMPFILE | DUPLICATE
| DYNAMIC | EMPTY | ENABLE | ENCRYPTION | ENCRYPTION_KEY_ADMIN | END | ENDS | ENGINE | ENGINE_ATTRIBUTE | ENGINES
| ERROR | ERRORS | ESCAPE | EUR | EVEN | EVENT | EVENTS | EVERY | EXCEPT
| EXCHANGE | EXCLUSIVE | EXPIRE | EXPORT | EXTENDED | EXTENT_SIZE | FAILED_LOGIN_ATTEMPTS | FAST | FAULTS
| FIELDS | FILE_BLOCK_SIZE | FILTER | FIREWALL_ADMIN | FIREWALL_USER | FIRST | FIXED | FLUSH
| FOLLOWS | FOUND | FULL | FUNCTION | GENERAL | GLOBAL | GRANTS | GROUP | GROUP_CONCAT
| GROUP_REPLICATION | GROUP_REPLICATION_ADMIN | HANDLER | HASH | HELP | HISTORY | HOST | HOSTS | IDENTIFIED
| IGNORED | IGNORE_SERVER_IDS | IMPORT | INDEXES | INITIAL_SIZE | INNODB_REDO_LOG_ARCHIVE
| INPLACE | INSERT_METHOD | INSTALL | INSTANCE | INSTANT | INTERNAL | INVOKE | INVOKER | IO
| IO_THREAD | IPC | ISO | ISOLATION | ISSUER | JIS | JSON | KEY_BLOCK_SIZE
| LAMBDA | LANGUAGE | LAST | LATERAL | LEAVES | LESS | LEVEL | LIST | LOCAL
| LOGFILE | LOGS | MASTER | MASTER_AUTO_POSITION
| MASTER_CONNECT_RETRY | MASTER_DELAY
| MASTER_HEARTBEAT_PERIOD | MASTER_HOST | MASTER_LOG_FILE
| MASTER_LOG_POS | MASTER_PASSWORD | MASTER_PORT
| MASTER_RETRY_COUNT | MASTER_SSL | MASTER_SSL_CA
| MASTER_SSL_CAPATH | MASTER_SSL_CERT | MASTER_SSL_CIPHER
| MASTER_SSL_CRL | MASTER_SSL_CRLPATH | MASTER_SSL_KEY
| MASTER_TLS_VERSION | MASTER_USER
| MAX_CONNECTIONS_PER_HOUR | MAX_QUERIES_PER_HOUR
| MAX | MAX_ROWS | MAX_SIZE | MAX_UPDATES_PER_HOUR
| MAX_USER_CONNECTIONS | MEDIUM | MEMBER | MEMORY | MERGE | MESSAGE_TEXT
| MID | MIGRATE
| MIN | MIN_ROWS | MODE | MODIFY | MUTEX | MYSQL | MYSQL_ERRNO | NAME | NAMES
| NCHAR | NDB_STORED_USER | NESTED | NEVER | NEXT | NO | NOCOPY | NODEGROUP | NONE | NOWAIT | NUMBER | ODBC | OFFLINE | OFFSET
| OF | OJ | OLD_PASSWORD | ONE | ONLINE | ONLY | OPEN | OPTIMIZER_COSTS
| OPTIONAL | OPTIONS | ORDER | ORDINALITY | OWNER | PACK_KEYS | PAGE | PARSER | PARTIAL
| PARTITIONING | PARTITIONS | PASSWORD | PASSWORDLESS_USER_ADMIN | PASSWORD_LOCK_TIME | PATH | PERSIST_RO_VARIABLES_ADMIN | PHASE | PLUGINS
| PLUGIN_DIR | PLUGIN | PORT | PRECEDES | PREPARE | PRESERVE | PREV | PRIMARY
| PROCESSLIST | PROFILE | PROFILES | PROXY | QUERY | QUICK
| REBUILD | RECOVER | RECURSIVE | REDO_BUFFER_SIZE | REDUNDANT
| RELAY | RELAYLOG | RELAY_LOG_FILE | RELAY_LOG_POS | REMOVE
| REORGANIZE | REPAIR | REPLICATE_DO_DB | REPLICATE_DO_TABLE
| REPLICATE_IGNORE_DB | REPLICATE_IGNORE_TABLE
| REPLICATE_REWRITE_DB | REPLICATE_WILD_DO_TABLE
| REPLICATE_WILD_IGNORE_TABLE | REPLICATION | REPLICATION_APPLIER | REPLICATION_SLAVE_ADMIN | RESET
| RESOURCE_GROUP_ADMIN | RESOURCE_GROUP_USER | RESUME
| RETURNED_SQLSTATE | RETURNS | REUSE | ROLE | ROLE_ADMIN | ROLLBACK | ROLLUP | ROTATE | ROW | ROWS
| ROW_FORMAT | RTREE | S3 | SAVEPOINT | SCHEDULE | SCHEMA_NAME | SECURITY | SECONDARY_ENGINE_ATTRIBUTE | SERIAL | SERVER
| SESSION | SESSION_VARIABLES_ADMIN | SET_USER_ID | SHARE | SHARED | SHOW_ROUTINE | SIGNED | SIMPLE | SLAVE
| SLOW | SNAPSHOT | SOCKET | SOME | SONAME | SOUNDS | SOURCE
| SQL_AFTER_GTIDS | SQL_AFTER_MTS_GAPS | SQL_BEFORE_GTIDS
| SQL_BUFFER_RESULT | SQL_CACHE | SQL_NO_CACHE | SQL_THREAD
| STACKED | START | STARTS | STATS_AUTO_RECALC | STATS_PERSISTENT
| STATS_SAMPLE_PAGES | STATUS | STD | STDDEV | STDDEV_POP | STDDEV_SAMP | STOP | STORAGE | 'STRING'
| SUBCLASS_ORIGIN | SUBJECT | SUBPARTITION | SUBPARTITIONS | SUM | SUSPEND | SWAPS
| SWITCHES | SYSTEM_VARIABLES_ADMIN | TABLE_NAME | TABLESPACE | TABLE_ENCRYPTION_ADMIN | TABLE_TYPE
| TEMPORARY | TEMPTABLE | THAN | TRADITIONAL
| TRANSACTION | TRANSACTIONAL | TRIGGERS | TRUNCATE | UNBOUNDED | UNDEFINED | UNDOFILE
| UNDO_BUFFER_SIZE | UNINSTALL | UNKNOWN | UNTIL | UPGRADE | USA | USER | USE_FRM | USER_RESOURCES
| VALIDATION | VALUE | VAR_POP | VAR_SAMP | VARIABLES | VARIANCE | VERSION_TOKEN_ADMIN | VIEW | VIRTUAL
| WAIT | WARNINGS | WITHOUT | WORK | WRAPPER | X509 | XA | XA_RECOVER_ADMIN | XML
;
FunctionNameBase:
ABS | ACOS | ADDDATE | ADDTIME | AES_DECRYPT | AES_ENCRYPT
| AREA | ASBINARY | ASIN | ASTEXT | ASWKB | ASWKT
| ASYMMETRIC_DECRYPT | ASYMMETRIC_DERIVE
| ASYMMETRIC_ENCRYPT | ASYMMETRIC_SIGN | ASYMMETRIC_VERIFY
| ATAN | ATAN2 j|
BENCHMARK | BIN | BIT_COUNT | BIT_LENGTH
| BUFFER |
CEIL | CEILING | CENTROID | CHARACTER_LENGTH|
CHAR_SET | CHAR_LENGTH | COERCIBILITY | COLLATION
| COMPRESS | CONCAT | CONCAT_WS | CONNECTION_ID | CONV
| CONVERT_TZ | COS | COT | COUNT | CRC32
| CREATE_ASYMMETRIC_PRIV_KEY | CREATE_ASYMMETRIC_PUB_KEY
| CREATE_DH_PARAMETERS | CREATE_DIGEST | CROSSES | CUME_DIST | DATABASE | DATE
| DATEDIFF | DATE_FORMAT | DAY | DAYNAME | DAYOFMONTH
| DAYOFWEEK | DAYOFYEAR | DECODE | DEGREES | DENSE_RANK | DES_DECRYPT
| DES_ENCRYPT | DIMENSION | DISJOINT | ELT | ENCODE
| ENCRYPT | ENDPOINT | ENVELOPE | EQUALS | EXP | EXPORT_SET
| EXTERIORRING | EXTRACTVALUE | FIELD | FIND_IN_SET | FIRST_VALUE | FLOOR
| FORMAT | FOUND_ROWS | FROM_BASE64 | FROM_DAYS
| FROM_UNIXTIME | GEOMCOLLFROMTEXT | GEOMCOLLFROMWKB
| GEOMETRYCOLLECTION | GEOMETRYCOLLECTIONFROMTEXT
| GEOMETRYCOLLECTIONFROMWKB | GEOMETRYFROMTEXT
| GEOMETRYFROMWKB | GEOMETRYN | GEOMETRYTYPE | GEOMFROMTEXT
| GEOMFROMWKB | GET_FORMAT | GET_LOCK | GLENGTH | GREATEST
| GTID_SUBSET | GTID_SUBTRACT | HEX | HOUR | IFNULL
| INET6_ATON | INET6_NTOA | INET_ATON | INET_NTOA | INSTR
| INTERIORRINGN | INTERSECTS | INVISIBLE
| ISCLOSED | ISEMPTY | ISNULL
| ISSIMPLE | IS_FREE_LOCK | IS_IPV4 | IS_IPV4_COMPAT
| IS_IPV4_MAPPED | IS_IPV6 | IS_USED_LOCK | LAG | LAST_INSERT_ID | LAST_VALUE
| LCASE | LEAD | LEAST | LEFT | LENGTH | LINEFROMTEXT | LINEFROMWKB
| LINESTRING | LINESTRINGFROMTEXT | LINESTRINGFROMWKB | LN
| LOAD_FILE | LOCATE | LOG | LOG10 | LOG2 | LOWER | LPAD
| LTRIM | MAKEDATE | MAKETIME | MAKE_SET | MASTER_POS_WAIT
| MBRCONTAINS | MBRDISJOINT | MBREQUAL | MBRINTERSECTS
| MBROVERLAPS | MBRTOUCHES | MBRWITHIN | MD5 | MICROSECOND
| MINUTE | MLINEFROMTEXT | MLINEFROMWKB | MOD| MONTH | MONTHNAME
| MPOINTFROMTEXT | MPOINTFROMWKB | MPOLYFROMTEXT
| MPOLYFROMWKB | MULTILINESTRING | MULTILINESTRINGFROMTEXT
| MULTILINESTRINGFROMWKB | MULTIPOINT | MULTIPOINTFROMTEXT
| MULTIPOINTFROMWKB | MULTIPOLYGON | MULTIPOLYGONFROMTEXT
| MULTIPOLYGONFROMWKB | NAME_CONST | NTH_VALUE | NTILE | NULLIF | NUMGEOMETRIES
| NUMINTERIORRINGS | NUMPOINTS | OCT | OCTET_LENGTH | ORD
| OVERLAPS | PERCENT_RANK | PERIOD_ADD | PERIOD_DIFF | PI | POINT
| POINTFROMTEXT | POINTFROMWKB | POINTN | POLYFROMTEXT
| POLYFROMWKB | POLYGON | POLYGONFROMTEXT | POLYGONFROMWKB
| POSITION | POW | POWER | QUARTER | QUOTE |
RADIANS | RAND | RANK
| RANDOM_BYTES | RELEASE_LOCK | REVERSE | RIGHT | ROUND
| ROW_COUNT | ROW_NUMBER | RPAD | RTRIM |
SCHEMA | SECOND | SEC_TO_TIME
| SESSION_USER | SESSION_VARIABLES_ADMIN
| SHA | SHA1 | SHA2 | SIGN | SIN | SLEEP
| SOUNDEX | SQL_THREAD_WAIT_AFTER_GTIDS | SQRT | SRID
| STARTPOINT | STRCMP | STR_TO_DATE | ST_AREA | ST_ASBINARY
| ST_ASTEXT | ST_ASWKB | ST_ASWKT | ST_BUFFER | ST_CENTROID
| ST_CONTAINS | ST_CROSSES | ST_DIFFERENCE | ST_DIMENSION
| ST_DISJOINT | ST_DISTANCE | ST_ENDPOINT | ST_ENVELOPE
| ST_EQUALS | ST_EXTERIORRING | ST_GEOMCOLLFROMTEXT
| ST_GEOMCOLLFROMTXT | ST_GEOMCOLLFROMWKB
| ST_GEOMETRYCOLLECTIONFROMTEXT
| ST_GEOMETRYCOLLECTIONFROMWKB | ST_GEOMETRYFROMTEXT
| ST_GEOMETRYFROMWKB | ST_GEOMETRYN | ST_GEOMETRYTYPE
| ST_GEOMFROMTEXT | ST_GEOMFROMWKB | ST_INTERIORRINGN
| ST_INTERSECTION | ST_INTERSECTS |
ST_ISCLOSED | ST_ISEMPTY
| ST_ISSIMPLE | ST_LINEFROMTEXT | ST_LINEFROMWKB
| ST_LINESTRINGFROMTEXT | ST_LINESTRINGFROMWKB
| ST_NUMGEOMETRIES | ST_NUMINTERIORRING
| ST_NUMINTERIORRINGS | ST_NUMPOINTS | ST_OVERLAPS
| ST_POINTFROMTEXT | ST_POINTFROMWKB | ST_POINTN
| ST_POLYFROMTEXT | ST_POLYFROMWKB | ST_POLYGONFROMTEXT
| ST_POLYGONFROMWKB | ST_SRID | ST_STARTPOINT
| ST_SYMDIFFERENCE | ST_TOUCHES | ST_UNION | ST_WITHIN
| ST_X | ST_Y | SUBDATE | SUBSTRING_INDEX | SUBTIME
| SYSTEM_USER |
TAN | TIME | TIMEDIFF | TIMESTAMP
| TIMESTAMPADD | TIMESTAMPDIFF | TIME_FORMAT | TIME_TO_SEC
| TOUCHES | TO_BASE64 | TO_DAYS | TO_SECONDS|
UCASE | UNCOMPRESS | UNCOMPRESSED_LENGTH | UNHEX | UNIX_TIMESTAMP
| UPDATEXML | UPPER | UUID | UUID_SHORT |
VALIDATE_PASSWORD_STRENGTH | VERSION | VISIBLE|
WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS | WEEK | WEEKDAY
| WEEKOFYEAR | WEIGHT_STRING | WITHIN|
X_FUNCTION|
YEAR | YEARWEEK | Y_FUNCTION|
JSON_ARRAY | JSON_OBJECT | JSON_QUOTE | JSON_CONTAINS | JSON_CONTAINS_PATH
| JSON_EXTRACT | JSON_KEYS | JSON_OVERLAPS | JSON_SEARCH | JSON_VALUE
| JSON_ARRAY_APPEND | JSON_ARRAY_INSERT | JSON_INSERT | JSON_MERGE
| JSON_MERGE_PATCH | JSON_MERGE_PRESERVE | JSON_REMOVE | JSON_REPLACE
| JSON_SET | JSON_UNQUOTE | JSON_DEPTH | JSON_LENGTH | JSON_TYPE
| JSON_VALID | JSON_TABLE | JSON_SCHEMA_VALID | JSON_SCHEMA_VALIDATION_REPORT
| JSON_PRETTY | JSON_STORAGE_FREE | JSON_STORAGE_SIZE | JSON_ARRAYAGG
| JSON_OBJECTAGG
;
I tried to split these rules into smaller subrules but nothing changed. I noticed that defining these keywords as terminals instead of rules consumes less memory. I tried to extend the file by splitting it into two grammars but nothing fixed. Here is the headers of each xtext file:
Quote:
grammar org.xtext.metamodel.sql.SQL with org.xtext.metamodel.sql.SQL2
generate sQL "http://www.xtext.org/metamodel/sql/SQL"
Root:
and
Quote:
grammar org.xtext.metamodel.sql.SQL2 with org.eclipse.xtext.common.Terminals
KeywordsCanBeId :
Here is the Generator.mwe2 langage part I used with both the one file grammar and the two files grammar:
Quote:
language = StandardLanguage {
name = "org.xtext.metamodel.sql.SQL"
fileExtensions = "sql"
serializer = {
generateStub = false
}
validator = {
// composedCheck = "org.eclipse.xtext.validation.NamesAreUniqueValidator"
// Generates checks for @Deprecated grammar annotations, an IssueProvider and a corresponding PropertyPage
generateDeprecationValidation = true
}
parserGenerator = {
debugGrammar = true
options = auto-inject {
classSplitting = true
casesPerSpecialStateSwitch= "200"
fieldsPerClass = "200"
methodsPerClass = "200"
}
}
junitSupport = {
junitVersion = "5"
}
I tried to hide some parts of these two long rules till I got a succussful artifacts generation. But when I degug the grammar using Antlrworks I get the "code is too long in try statement" exception:
Quote:
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18158: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18181: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18217: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18240: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18282: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18305: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18322: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18362: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18385: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18402: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18442: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18465: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18482: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18500: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18517: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18550: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18573: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18621: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18644: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18661: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18695: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18718: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18755: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18778: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18815: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18838: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18875: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18898: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18935: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18958: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:18995: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19018: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19056: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19079: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19116: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19139: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19176: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19199: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19236: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19259: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19295: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19318: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19372: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19395: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19432: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19455: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19491: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19514: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19556: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19579: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19596: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19636: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19659: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19676: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19716: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19739: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19756: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19774: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19791: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19824: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19847: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19896: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19919: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19936: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19970: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:19993: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20030: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20053: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20090: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20113: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20150: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20173: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20210: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20233: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20270: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20293: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20331: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20354: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20391: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20414: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20451: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20474: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20511: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:57:59] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20534: error: code too large for try statement
[14:57:59] try {
[14:57:59] ^
[14:58:00] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20570: error: code too large for try statement
[14:58:00] try {
[14:58:00] ^
[14:58:00] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20593: error: code too large for try statement
[14:58:00] try {
[14:58:00] ^
[14:58:00] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20647: error: code too large for try statement
[14:58:00] try {
[14:58:00] ^
[14:58:00] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20670: error: code too large for try statement
[14:58:00] try {
[14:58:00] ^
[14:58:00] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20707: error: code too large for try statement
[14:58:00] try {
[14:58:00] ^
[14:58:00] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20730: error: code too large for try statement
[14:58:00] try {
[14:58:00] ^
[14:58:00] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20766: error: code too large for try statement
[14:58:00] try {
[14:58:00] ^
[14:58:00] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20789: error: code too large for try statement
[14:58:00] try {
[14:58:00] ^
[14:58:00] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20831: error: code too large for try statement
[14:58:00] try {
[14:58:00] ^
[14:58:00] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20854: error: code too large for try statement
[14:58:00] try {
[14:58:00] ^
[14:58:00] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20871: error: code too large for try statement
[14:58:00] try {
[14:58:00] ^
[14:58:00] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20911: error: code too large for try statement
[14:58:00] try {
[14:58:00] ^
[14:58:00] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20934: error: code too large for try statement
[14:58:00] try {
[14:58:00] ^
[14:58:00] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20951: error: code too large for try statement
[14:58:00] try {
[14:58:00] ^
[14:58:00] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:20991: error: code too large for try statement
[14:58:00] try {
[14:58:00] ^
[14:58:00] D:\Eclipse\eclipse-workspace\org.xtext.metamodel.sql\src-gen\org\xtext\metamodel\sql\parser\antlr\internal\output\DebugInternalSQLParser.java:21014: error: code too large for try statement
[14:58:00] try {
[14:58:00] ^
[14:58:00] 100 errors
[14:58:00] only showing the first 100 errors, of 891 total; use -Xmaxerrs if you would like to see more
|
|
|
|
|
|
Re: error: code too large for try statement + java heap [message #1861258 is a reply to message #1861237] |
Mon, 02 October 2023 23:31   |
Eclipse User |
|
|
|
Here is a reproducer, it is a messy and a reduced version of my huge grammar. I hope it gonna help. When I use Antlrworks, after I hid the Keywordscanbeid rule, it shows "code is too large" error. When I reintegrate this rule in the grammar it results in a "java heap space" error.
As for why this rule is there, it is because some mysql-specific keywords can be recognized as identifiers. I think I should get rid of this troublesome rule and its pairs.
[Updated on: Wed, 04 October 2023 16:28] by Moderator Report message to a moderator
|
|
|
|
Re: error: code too large for try statement + java heap [message #1861294 is a reply to message #1861269] |
Wed, 04 October 2023 11:01   |
Eclipse User |
|
|
|
You are right, this code needs to be refactored. I can reduce the number of => operators I used to avoid ambiguity, but I am more concerned right now with what is causing the "code is too large" and "Java heap space" errors since the => operators and ambiguous rules are not probably the cause. As I mentioned before, I am reusing an Antlr-based grammar of MySQL.
|
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.07897 seconds