devkanro / intellij-protobuf-plugin

IntelliJ-based IDEs Protobuf Language Plugin that provides Protobuf language support.
Apache License 2.0
83 stars 11 forks source link

Plugin not compatible with 2023.1 #164

Closed nofarius closed 1 year ago

nofarius commented 1 year ago

Hi,

When opening Intellij 2023.1 I get the following error from this plugin. I'm using the latest v1.7.0.

I can confirm that the default protobuf and grpc plugins are disabled, and the error only started happening when upgrading to 2023.1

Please let me know any additional information you need from my end

Edit: I just tried disabling all external plugins (and the proto/grpc internal ones) and the same error occurs, so it doesn't seem to be an interaction problem with a different plugin

java.lang.Throwable: All stub element types should be created before index initialization is complete.
Please add the class io.kanro.idea.plugin.protobuf.lang.psi.stub.type.ProtobufEnumStubType with external ID protobuf.enum.stub containing stub element type constants to "stubElementTypeHolder" extension.
Registered extensions: [com.intellij.util.xml.stubs.DomElementTypeHolder, com.intellij.psi.css.impl.CssStubElementTypes, org.jetbrains.plugins.less.LessStubElementTypes, org.intellij.plugins.postcss.PostCssStubElementTypes, org.jetbrains.plugins.scss.ScssStubElementTypes, org.jetbrains.plugins.sass.psi.SassStubElementTypes, org.intellij.plugins.markdown.lang.MarkdownStubElementTypes, com.intellij.lang.properties.parsing.PropertiesElementTypes, com.intellij.psi.impl.java.stubs.JavaStubElementTypes, org.jetbrains.plugins.groovy.lang.parser.GroovyStubElementTypes, org.jetbrains.plugins.groovy.lang.parser.GroovyEmptyStubElementTypes, org.jetbrains.kotlin.psi.stubs.elements.KtStubElementTypes, com.intellij.lang.javascript.JSStubElementTypes, com.intellij.lang.typescript.TypeScriptStubElementTypes, com.intellij.lang.javascript.flow.FlowJSStubElementTypes, com.intellij.lang.javascript.frameworks.jquery.JQueryCssStubElementTypes, com.intellij.lang.actionscript.ActionScriptStubElementTypes, com.intellij.lang.ecmascript6.ES6StubElementTypes, org.jetbrains.vuejs.lang.expr.parser.VueJSStubElementTypes, org.jetbrains.vuejs.lang.html.parser.VueStubElementTypes, com.intellij.httpClient.js.http.request.language.HttpClientJSEmbeddedContent, com.intellij.sql.psi.SqlCompositeElementTypes, com.intellij.sql.dialects.sql92.Sql92ElementTypes$Stubs, com.intellij.sql.dialects.cassandra.CassElementTypes$Stubs, com.intellij.sql.dialects.clickhouse.CHouseElementTypes$Stubs, com.intellij.sql.dialects.db2.Db2ElementTypes$Stubs, com.intellij.sql.dialects.derby.DerbyElementTypes$Stubs, com.intellij.sql.dialects.exasol.ExaElementTypes$Stubs, com.intellij.sql.dialects.greenplum.GPlumElementTypes$Stubs, com.intellij.sql.dialects.h2.H2ElementTypes$Stubs, com.intellij.sql.dialects.hive.HiveElementTypes$Stubs, com.intellij.sql.dialects.hsql.HsqlElementTypes$Stubs, com.intellij.sql.dialects.mssql.MsElementTypes$Stubs, com.intellij.sql.dialects.mysql.MysqlElementTypes$Stubs, com.intellij.sql.dialects.oracle.OraElementTypes$Stubs, com.intellij.sql.dialects.oraplus.OraPlusElementTypes$Stubs, com.intellij.sql.dialects.postgres.PgElementTypes$Stubs, com.intellij.sql.dialects.redshift.RsElementTypes$Stubs, com.intellij.sql.dialects.snowflake.SFlakeElementTypes$Stubs, com.intellij.sql.dialects.sqlite.SqliteElementTypes$Stubs, com.intellij.sql.dialects.sybase.AseElementTypes$Stubs, com.intellij.sql.dialects.vertica.VertElementTypes$Stubs, com.intellij.sql.dialects.bigquery.BigQueryElementTypes$Stubs, com.intellij.sql.dialects.couchbase.CouchbaseElementTypes$Stubs, com.intellij.sql.dialects.mongo.MongoSqlElementTypes$Stubs, com.intellij.sql.dialects.cockroach.CRoachElementTypes$Stubs, com.intellij.sql.dialects.redis.RedisElementTypes$Stubs, com.intellij.gwt.clientBundle.css.language.GwtCssStubElementTypes, io.kanro.idea.plugin.protobuf.lang.psi.ProtobufTypes, io.kanro.idea.plugin.protobuf.lang.psi.ProtobufTypes, org.angular2.lang.html.stub.Angular2HtmlStubElementTypes, org.angular2.lang.expr.parser.Angular2StubElementTypes, org.angular2.entities.metadata.Angular2MetadataElementTypes]
Registered lazy ids: [JS:ACTIONSCRIPT_CLASS, sql.SQL_OFFSET_CLAUSE, protobufOPTION_NAME, sql.SQL_CREATE_USER_STATEMENT, kotlin.CHARACTER_CONSTANT, sql.SQL_INTERVAL_LITERAL, sql.SQL_ALTER_STATEMENT, protobufTYPE_NAME, sql.SQL_LOCK_TABLE_STATEMENT, sql.SQL_VALUES_EXPRESSION, sql.SQL_DELETE_STATEMENT, sql.SQL_RETURNING_CLAUSE, sql.SQL_LIMIT_OFFSET_CLAUSE, sql.SQL_TOP_CLAUSE, protobufMAP_FIELD_DEFINITION, JS:ES6_DECORATOR_DECLARATION, sql.ODBC_GENERIC, sql.VERT_ALTER_FAULT_GROUP_STATEMENT, java.MODULE, sql.ASE_CREATE_LOGIN_STATEMENT, gr.CLASS_TYPE_DEFINITION, JS:VARIABLE, sql.GPLUM_CREATE_RESOURCE_GROUP_STATEMENT, sql.SQL_IDENTIFIER, sql.SQL_SELECT_INTO_CLAUSE, NG-META:FUNCTION, CSS.CSS_PSEUDO_CLASS, JS:MAYBE_TYPE, sql.MSSQL_CREATE_ROUTE_STATEMENT, sql.SFLAKE_CREATE_MANAGED_ACCOUNT_STATEMENT, sql.SQL_GROUP_BY_CLAUSE, sql.MSSQL_CREATE_ENDPOINT_STATEMENT, protobufENUM_OPTION, gr.ENUM_TYPE_DEFINITION, sql.SQL_SELECT_STATEMENT, JS:IMPORT_DECLARATION, kotlin.REFERENCE_EXPRESSION, sql.SQLITE_CREATE_SAVEPOINT_STATEMENT, xml.FileStubSerializer, kotlin.OBJECT_DECLARATION, kotlin.CONTEXT_RECEIVER_LIST, JS:ACTIONSCRIPT_FUNCTION_EXPRESSION, sql.SQL_ALTER_TRIGGER_STATEMENT, sql.SQL_DECLARE_STATEMENT, VUE-JS:STUB_VERSION, sql.SQL_LIBRARY_REFERENCE, protobufIDENTIFIER, sql.SQL_EXPRESSION_LIST, sql.SQL_SCRIPT_REFERENCE, JS:MOD_ES6_EMBEDDED_CONTENT, sql.SQL_WITH_TIME_ZONE_EXPRESSION, kotlin.LITERAL_STRING_TEMPLATE_ENTRY, sql.SQL_ALTER_ROLE_STATEMENT, sql.RS_CREATE_LIBRARY_STATEMENT, protobufMESSAGE_OPTION, sql.SQL_REFERENCE, sql.GPLUM_CREATE_CONVERSION_STATEMENT, JS:ACTIONSCRIPT_VARIABLE, JS:TYPE_OPERATOR, sql.SQL_GRANT_STATEMENT, sql.SQL_PARAMETER_DEFINITION, sql.SQL_COLUMN_ALIAS_DEFINITION, sql.SQL_GOTO_STATEMENT, protobufMESSAGE_DEFINITION, NG-META:PIPE, sql.SQL_SELECT_EXCEPT_CLAUSE, sql.MSSQL_CREATE_CONTRACT_STATEMENT, sql.DB2_CREATE_SECURITY_POLICY_STATEMENT, protobufENUM_VALUE_OPTION_BLOCK, kotlin.BLOCK_CODE_FRAGMENT, JS:IMPORT_CALL, sql.SQL_TYPE_CAST_EXPRESSION, protobufBOOLEAN_VALUE, protobufRESERVED_RANGE, sql.SQL_NARY_EXPRESSION, sql.PG_CREATE_ACCESS_METHOD_STATEMENT, JS:STRING_LITERAL_TYPE, sql.SQL_SPECIAL_ERROR_SPEC, sql.VERT_ALTER_NOTIFIER_STATEMENT, sql.SQL_DML_INSTRUCTION, sql.ORA_ALTER_MATERIALIZED_VIEW_STATEMENT, GroovyCLASS_BODY, JS:EXPORT_DEFAULT_ASSIGNMENT, sql.GPLUM_CREATE_EXTERNAL_TABLE_STATEMENT, VUE-JS:EXTERNAL_ID_PREFIX, CSS.CSS_ID_SELECTOR, sql.SQL_IF_EXISTS_CLAUSE, PostCSS.POST_CSS_STYLESHEET, sql.SQL_EXPRESSION, NG-META:MODULE_EXPORT, sql.SQL_EVALUABLE_EXPRESSION, sql.SQL_LIKE_TABLE_CLAUSE, java.ANNOTATION_PARAMETER_LIST, protobufPACKAGE_STATEMENT, JS:PROPERTY_SIGNATURE, sql.MSSQL_CREATE_AUDIT_SPECIFICATION_STATEMENT, sql.SFLAKE_CREATE_STAGE_STATEMENT, sql.SQL_BINARY_EXPRESSION, sql.DB2_CREATE_TYPE_MAPPING_STATEMENT, JS:JSDOC_FUNCTION_TYPE_PARAMETER, sql.SQL_INJECTABLE_RAW_INPUT, JS:FLOW_JS_CLASS_EXPRESSION, JS:FLOW_MODULE, sql.SQL_COMMENT_CLAUSE, kotlin.TYPEALIAS, sql.SQL_CONDITION_REFERENCE, sql.SQL_INDEX_DEFINITION, sql.ORAP_VARIABLE_DEFINITION, sql.SQL_HAVING_CLAUSE, sql.GPLUM_CREATE_FUNCTION_STATEMENT, sql.ASE_CREATE_THREAD_POOL_STATEMENT, JS:TYPESCRIPT_GLOBAL_MODULE_EXPORT, sql.SQL_VARIABLE_REFERENCE, java.USES_STATEMENT, kotlin.FUNCTION, sql.SQL_ARGUMENT_LIST, sql.SQL_EXCEPTION_WHEN_CLAUSE, sql.SQL_EXIT_STATEMENT, JS:TYPESCRIPT_MODULE, JS:IMPORT_SPECIFIER_ALIAS, sql.SQL_CREATE_PROFILE_STATEMENT, protobufMESSAGE_BODY, kotlin.VALUE_PARAMETER, sql.SQL_TRIGGER_TIME_CLAUSE, sql.REDIS_UPSERT_STREAM_STATEMENT, sql.PG_CREATE_EVENT_TRIGGER_STATEMENT, sql.SQL_BETWEEN_EXPRESSION, JS:TYPESCRIPT_FIELD, sql.SQL_ANALYTIC_CLAUSE, sql.DB2_CREATE_SAVEPOINT_STATEMENT, sql.SQL_SET_ASSIGNMENT, sql.MSSQL_CREATE_EVENT_NOTIFICATION_STATEMENT, protobufSYMBOL_NAME, sql.SQL_CREATE_PROCEDURE_STATEMENT, protobufONEOF_DEFINITION, JS:TYPESCRIPT_CLASS, sql.SQL_VIEW_REFERENCE, sql.SQL_FETCH_CLAUSE, sql.SQL_STRING_LITERAL_CONCATENATION, sql.SQL_CASE_STATEMENT, sql.H2_RENAME_STATEMENT, sql.SQL_ALTER_VIEW_STATEMENT, NG-META:CALL, JS:DESTRUCTURING_SHORTHANDED_PROPERTY, sql.VERT_CREATE_QUERY_STATEMENT, sql.SQL_TRIGGER_GRANULARITY_CLAUSE, sql.SQL_PACKAGE_REFERENCE, JS:TYPE_PARAMETER_LIST, sql.SQL_ROW_ACCESS_POLICY_REFERENCE, JS:TYPEOF_TYPE, sql.H2_CREATE_SAVEPOINT_STATEMENT, sql.PG_CREATE_PUBLICATION_STATEMENT, sql.SFLAKE_CREATE_SHARE_STATEMENT, JS:TYPESCRIPT_PARAMETER_LIST, sql.ORA_CREATE_ZONEMAP_STATEMENT, gr.VARIABLE, kotlin.IMPORT_ALIAS, sql.SQL_ASSERTION_REFERENCE, java.TYPE_PARAMETER, sql.SQL_SYSTEM_REFERENCE, sql.SQL_DATE_LITERAL, sql.SQL_TIME_LITERAL, sql.SQL_CREATE_CATALOG_STATEMENT, sql.GPLUM_CREATE_PROTOCOL_STATEMENT, JS:OBJECT_TYPE, kotlin.TYPE_PROJECTION, JS:STRING_TEMPLATE_EXPRESSION, sql.SQL_ENGINE_CLAUSE, sql.DB2_CREATE_STORAGE_GROUP_STATEMENT, kotlin.VALUE_ARGUMENT, sql.PG_CREATE_EXTENSION_STATEMENT, sql.SFLAKE_CREATE_PIPE_STATEMENT, java.NAME_VALUE_PAIR, sql.REDIS_UPSERT_COLLECTION_STATEMENT, GroovyENUM_CONSTANTS, sql.SQL_AS_EXPRESSION, sql.VERT_ALTER_MODEL_STATEMENT, java.ENUM_CONSTANT_INITIALIZER, sql.SQL_QUALIFY_CLAUSE, sql.GPLUM_CREATE_SERVER_STATEMENT, sql.HIVE_CREATE_MACRO_STATEMENT, JS:TYPESCRIPT_FUNCTION_PROPERTY, sql.MYSQL_CREATE_PACKAGE_STATEMENT, kotlin.PROPERTY, sql.SQL_WHILE_LOOP_STATEMENT, sql.REDIS_UPSERT_SET_STATEMENT, sql.SQL_COLLECTION_TYPE_REFERENCE, sql.SQL_UNPIVOTED_QUERY_EXPRESSION, JS:TYPE_PARAMETER, kotlin.DYNAMIC_TYPE, JS:EXPORT_SPECIFIER_ALIAS, sql.PG_CREATE_FOREIGN_TABLE_STATEMENT, sql.VERT_ALTER_PROJECTION_STATEMENT, JS:TYPE_PARAMETER_CONSTRAINT, sql.GPLUM_CREATE_EXTENSION_STATEMENT, sql.PG_CREATE_FOREIGN_DATA_WRAPPER_STATEMENT, sql.PG_CREATE_OPERATOR_FAMILY_STATEMENT, sql.MSSQL_CREATE_EXTERNAL_FILE_FORMAT_STATEMENT, JS:MOD_TSX_EMBEDDED_CONTENT, sql.ORA_CREATE_PACKAGE_BODY_STATEMENT, kotlin.FLOAT_CONSTANT, protobufEXTENSION_OPTION_NAME, protobufINTEGER_VALUE, sql.PG_CREATE_MATERIALIZED_VIEW_STATEMENT, sql.SQL_ARRAY_LITERAL, sql.GPLUM_CREATE_LANGUAGE_STATEMENT, JS:FIELD_STATEMENT, sql.SQL_UPDATABILITY_CLAUSE, sql.SQL_SIGNAL_STATEMENT, sql.SQL_CREATE_TRIGGER_STATEMENT, sql.CROACH_CREATE_SEQUENCE_STATEMENT, sql.MSSQL_CREATE_PARTITION_FUNCTION_STATEMENT, sql.SQL_WINDOW_CLAUSE, sql.SQL_SHORT_REFERENCE, JS:IMPLICIT_MODULE, sql.SQL_SPECIAL_LITERAL, gr.ENUM_CONSTANT, sql.MSSQL_CREATE_DEFAULT_STATEMENT, sql.SQL_THROW_STATEMENT, protobufPACKAGE_NAME, protobufENUM_VALUE_DEFINITION, sql.SQL_BUILTIN_TYPE_ELEMENT, sql.SQL_WITH_QUERY_EXPRESSION, sql.SQL_ALTER_TYPE_STATEMENT, sql.SQL_SET_STATEMENT, protobufSYNTAX_STATEMENT, JS:ARRAY_LITERAL_EXPRESSION, sql.SQL_SYNONYM_REFERENCE, protobufBUILT_IN_OPTION_NAME, JS:XML_ATTRIBUTE, sql.SQL_HIERARCHICAL_QUERY_CLAUSE, kotlin.SUPER_TYPE_LIST, kotlin.SHORT_STRING_TEMPLATE_ENTRY, sql.SQL_CASE_WHEN_THEN_CLAUSE, sql.SQL_ELSEIF_CLAUSE, sql.ASE_CREATE_ENCRYPTION_KEY_STATEMENT, JS:OBJECT_LITERAL_EXPRESSION, JS:EXPORTED_DEFAULT_BINDING, sql.HIVE_CREATE_MAPPING_STATEMENT, kotlin.BOOLEAN_CONSTANT, JS:FLOW_JS_CLASS, JS:THIS_TYPE, sql.PG_CREATE_TEXT_SEARCH_CONFIGURATION_STATEMENT, sql.DB2_CREATE_THRESHOLD_STATEMENT, JS:MOD_EMBEDDED_CONTENT, sql.SQL_COLLECTION_TYPE_DEFINITION, protobufONEOF_OPTION, sql.SQL_STRING_LITERAL, sql.SQL_CREATE_OPERATOR_STATEMENT, sql.PG_CREATE_TRIGGER_STATEMENT, JS:DESTRUCTURING_PARAMETER, sql.SQL_OPTIONAL_REFERENCE, protobufSERVICE_OPTION, sql.MSSQL_ALTER_PROCEDURE_STATEMENT, JS:TYPESCRIPT_CLASS_EXPRESSION, sql.MSSQL_CREATE_PARTITION_SCHEME_STATEMENT, sql.MSSQL_CREATE_REMOTE_SERVICE_BINDING_STATEMENT, sql.SQL_WITH_CYCLE_CLAUSE, sql.SQL_DECLARE_VARIABLE_STATEMENT, sql.VERT_CREATE_FAULT_GROUP_STATEMENT, sql.ORA_CREATE_DISKGROUP_STATEMENT, NG-META:MODULE, kotlin.CLASS_INITIALIZER, sql.SQL_PARTITION_REFERENCE, sql.SQL_START_TRANSACTION_STATEMENT, JS:XML_JS_SCRIPT, JS:ACTIONSCRIPT_ATTRIBUTE_LIST, sql.ORA_CREATE_OUTLINE_STATEMENT, gr.ANONYMOUS_TYPE_DEFINITION, sql.SFLAKE_CREATE_RESOURCE_MONITOR_STATEMENT, sql.SFLAKE_CREATE_STREAM_STATEMENT, sql.SQL_ROLE_REFERENCE, sql.SQL_ANY_CALLABLE_REFERENCE, kotlin.SUPER_TYPE_CALL_ENTRY, sql.GPLUM_CREATE_OPERATOR_CLASS_STATEMENT, JS:EXPORT_SPECIFIER, sql.SQL_NOT_NULL_CONSTRAINT_DEFINITION, sql.SFLAKE_CREATE_SECURITY_INTEGRATION_STATEMENT, sql.SQL_CALL_STATEMENT, sql.SQL_USER_REFERENCE, sql.DB2_CREATE_DATABASE_STATEMENT, sql.GPLUM_CREATE_TEXT_SEARCH_CONFIGURATION_STATEMENT, NG-META:Companion, gr.EXTENDS_CLAUSE, kotlin.LONG_STRING_TEMPLATE_ENTRY, sql.SQL_COMMENT_STATEMENT, protobufFIELD_NAME, sql.DB2_CREATE_MASK_STATEMENT, sql.ASE_CREATE_RESULT_SET_STATEMENT, sql.SQL_MATERIALIZED_VIEW_REFERENCE, sql.GPLUM_CREATE_TRIGGER_STATEMENT, protobufRPC_BODY, sql.SQL_XML_COLUMNS_CLAUSE, sql.GPLUM_CREATE_VIEW_STATEMENT, java.JAVA_FILE, sql.SQL_PARENTHESIZED_EXPRESSION, sql.DB2_CREATE_EVENT_MONITOR_STATEMENT, JS:COMPUTED_NAME, sql.SQL_OPERATOR_REFERENCE, sql.SQL_AS_QUERY_CLAUSE, JS:DECLARE_EXPORT_DECLARATION, sql.ORA_CREATE_DATABASE_LINK_STATEMENT, sql.SQL_INDEX_SHORT_REFERENCE, JS:CALL_EXPRESSION, sql.SQL_ALTER_FUNCTION_STATEMENT, JS:ATTRIBUTE, protobufIMPORT_LABEL, java.IMPORT_STATIC_STATEMENT, java.TYPE_PARAMETER_LIST, gr.FIELD, sql.SQL_COLUMN_DETAILS_CLAUSE, sql.SQL_EXCEPTION_CLAUSE, protobufRPC_OPTION, JS:MAPPED_TYPE, kotlin.IMPORT_LIST, sql.ORA_CREATE_INDEXTYPE_STATEMENT, java.METHOD_REF_EXPRESSION, sql.SQL_REFERENCE_TYPE_ELEMENT, gr.IMPLEMENTS_CLAUSE, gr.INTERFACE_TYPE_DEFINITION, CSS.CSS_DECLARATION, JQuery-CSS.JQUERY_CSS_STYLESHEET, java.IMPLEMENTS_LIST, sql.SQL_SELECT_RENAME_CLAUSE, sql.SQL_MERGE_STATEMENT, sql.ORA_CREATE_DATABASE_STATEMENT, SCSS.SCSS_MIXIN_DECLARATION, sql.SQL_CONFLICT_ACTION_CLAUSE, sql.ORA_CREATE_JAVA_STATEMENT, sql.RS_CREATE_EXTERNAL_TABLE_STATEMENT, sql.MYSQL_USER_DEFINITION, xml.XIncludeStub, sql.SQL_TYPE_SUFFIX, sql.SQL_FETCH_STATEMENT, sql.SQL_OPEN_CURSOR_STATEMENT, sql.HIVE_CREATE_RESOURCE_PLAN_STATEMENT, kotlin.VALUE_ARGUMENT_LIST, JS:NAMED_IMPORTS, VUE:VERSION, sql.VERT_CREATE_AUTH_METHOD_STATEMENT, sql.REDIS_UPSERT_STRING_STATEMENT, sql.SQL_CREATE_TRANSLATION_STATEMENT, sql.SQL_ALTER_TABLE_STATEMENT, sql.VERT_CREATE_SAVEPOINT_STATEMENT, NG:EXTERNAL_ID_PREFIX, sql.SQL_PROCEDURE_REFERENCE, sql.REDIS_UPSERT_HASH_TABLE_STATEMENT, JS:MAPPED_TYPE_PARAMETER, sql.SQL_COLUMN_REFERENCE, sql.ASE_CREATE_PROXY_TABLE_STATEMENT, sql.CH_CREATE_DICTIONARY_STATEMENT, JS:TYPE_CAST, sql.SQL_ALTER_INDEX_STATEMENT, sql.SQL_CREATE_COLLATION_STATEMENT, sql.GPLUM_CREATE_FOREIGN_DATA_WRAPPER_STATEMENT, sql.SQL_AUTHORIZATION_IDENTIFIER, sql.DB2_CREATE_TRUSTED_CONTEXT_STATEMENT, sql.PG_CREATE_TEXT_SEARCH_TEMPLATE_STATEMENT, sql.VERT_CREATE_LIBRARY_STATEMENT, CSS.CSS_RULESET_LIST, JS:ARRAY_TYPE, sql.SQL_SCOPING_EXPRESSION, sql.SQL_NULLABLE_CONSTRAINT_DEFINITION, sql.SQL_CASE_EXPRESSION, protobufGROUP_DEFINITION, sql.SQL_FUNCTION_SIGNATURE, sql.MSSQL_CREATE_SECURITY_POLICY_STATEMENT, sql.SQL_SELECT_REPLACE_CLAUSE, JS:NAMESPACE_EXPORT, sql.DB2_CREATE_INDEX_EXTENSION_STATEMENT, sql.SQL_COLUMN_ALIAS_LAZY_LIST, sql.SQL_USE_CATALOG_STATEMENT, sql.SQL_CONSTRAINT_REFERENCE, JS:IMPLEMENTS_LIST, CSS.CSS_CLASS, kotlin.PROPERTY_ACCESSOR, sql.SQL_REFERENCING_CLAUSE, sql.SQL_CREATE_METHOD_STATEMENT, sql.GPLUM_CREATE_USER_MAPPING_STATEMENT, sql.VERT_ALTER_POOL_STATEMENT, sql.SQL_PARTITION_BY_CLAUSE, protobufFILE_OPTION, sql.MSSQL_CREATE_ALIAS_TYPE_STATEMENT, kotlin.TYPE_PARAMETER_LIST, sql.ORA_CREATE_SAVEPOINT_STATEMENT, sql.SQL_FOREIGN_KEY_CASCADE_OPTION, JS:ATTRIBUTE_LIST, sql.SQL_COMMIT_STATEMENT, sql.ORA_CREATE_DIMENSION_STATEMENT, JS:JSDOC_TUPLE_TYPE, LESS.LESS_PARAMETER, JS:DESTRUCTURING_ELEMENT, JS:ATTRIBUTE_LISTS, JS:ASSIGNMENT_PROPERTY, sql.SQL_CONDITION_ERROR_SPEC, JS:CALL_SIGNATURE, sql.SQL_CREATE_AGGREGATE_STATEMENT, SASS.SASS_STYLESHEET, kotlin.VALUE_ARGUMENT_NAME, JS:IMPORT_SPECIFIER, JS:TYPE_ARGUMENT_LIST, sql.MYSQL_RENAME_TABLE_STATEMENT, sql.DB2_CREATE_VARIABLE_STATEMENT, CSS.CSS_PSEUDO_ELEMENT, JS:TS_EMBEDDED_CONTENT, java.LAMBDA_EXPRESSION, NG-META:COMPONENT, kotlin.DOT_QUALIFIED_EXPRESSION, sql.GPLUM_CREATE_RULE_STATEMENT, sql.ASE_CREATE_DEFAULT_STATEMENT, JS:PACKAGE_STATEMENT, CSS.CSS_MEDIA, sql.SQL_FUNCTION_REFERENCE, sql.SQL_QUERY_EXPRESSION, sql.SQL_MERGE_DML_INSTRUCTION, JS:EMBEDDED_CONTENT, sql.MYSQL_CREATE_SERVER_STATEMENT, sql.ORA_CREATE_CLUSTER_STATEMENT, protobufSERVICE_DEFINITION, JS:DESTRUCTURING_PROPERTIES, JS:FLOW_JS_FUNCTION_EXPRESSION, sql.SQL_TYPE_ELEMENT, JS:CLASS_EXPRESSION, sql.SQL_ALTER_INSTRUCTION, kotlin.BACKING_FIELD, JS:TYPESCRIPT_INTERFACE, sql.SQL_METHOD_REFERENCE, sql.PG_ALTER_OPERATOR_STATEMENT, sql.ODBC_TIME, sql.VERT_CREATE_PROJECTION_STATEMENT, sql.GPLUM_CREATE_TEXT_SEARCH_PARSER_STATEMENT, JS:PARAMETER_LIST, JS:FLOW_EMBEDDED_CONTENT, sql.ORA_FUNCTION_DECLARATION, sql.SQL_CREATE_TABLESPACE_STATEMENT, sql.SQL_TYPED_COLUMN_ALIAS_LIST, sql.SQL_ALTER_PROFILE_STATEMENT, sql.SQL_RETURN_STATEMENT, sql.SQL_CUSTOM_SYSTEM_REFERENCE, protobufOPTION_ASSIGN, kotlin.ANNOTATION, sql.SQL_COLUMN_DEFINITION, sql.SQL_SELECT_APPLY_CLAUSE, sql.DB2_CREATE_SECURITY_LABEL_STATEMENT, sql.MSSQL_CREATE_AVAILABILITY_GROUP_STATEMENT, java.LITERAL_EXPRESSION, sql.SQL_REVOKE_STATEMENT, sql.SQL_CLAUSE, sql.SQL_FOREIGN_KEY_DEFINITION, JS:TYPESCRIPT_VARIABLE, sql.SQL_UNION_EXPRESSION, sql.CROACH_CREATE_EXTENSION_STATEMENT, JS:CONDITIONAL_TYPE, sql.SQL_GENERIC_AT_REFERENCE, sql.ORA_CREATE_DIRECTORY_STATEMENT, sql.SQL_FOR_LOOP_STATEMENT, sql.SQL_CREATE_MATERIALIZED_VIEW_STATEMENT, sql.ORA_CREATE_EDITION_STATEMENT, sql.DB2_CREATE_FUNCTION_MAPPING_STATEMENT, sql.HIVE_IMPORT_TABLE_STATEMENT, java.PARAMETER_LIST, sql.SQL_BOOLEAN_LITERAL, kotlin.USER_TYPE, java.CLASS_INITIALIZER, sql.SQL_SEQUENCE_REFERENCE, sql.ORA_ALTER_PACKAGE_STATEMENT, JS:ENUM_FIELD_STATEMENT, sql.GPLUM_ALTER_OPERATOR_STATEMENT, sql.SQL_JOIN_EXPRESSION, sql.SQL_UPDATE_DML_INSTRUCTION, protobufIMPORT_STATEMENT, sql.SQL_CREATE_CHARACTER_SET_STATEMENT, JS:MOD_TS_EMBEDDED_CONTENT, protobufFIELD_OPTION_BLOCK, sql.MSSQL_CREATE_CERTIFICATE_STATEMENT, JS:SPREAD_EXPRESSION, sql.SQL_QUERY_FLATTEN_CLAUSE, sql.SQL_HINT_CLAUSE, sql.VERT_CREATE_POOL_STATEMENT, LESS.LESS_PARAMETER_LIST, sql.SQL_CREATE_SCHEMA_STATEMENT, sql.HSQL_CREATE_SAVEPOINT_STATEMENT, sql.SQL_ASSIGNMENT_EXPRESSION, sql.PG_CREATE_STATISTICS_STATEMENT, JS:PROPERTY, sql.SFLAKE_RESULTSET_DEFINITION, protobufRPC_IO, sql.SQL_ORDER_BY_CLAUSE, sql.SQL_PIVOTED_QUERY_EXPRESSION, sql.SQL_BLOCK_STATEMENT, java.ANNOTATION_METHOD, protobufNUMBER_VALUE, sql.SQL_COLUMN_SHORT_REFERENCE, kotlin.NULL, sql.GPLUM_CREATE_FOREIGN_TABLE_STATEMENT, sql.SQL_FUNCTION_DEFINITION, sql.ORA_CREATE_TYPE_BODY_STATEMENT, sql.PG_CREATE_TEXT_SEARCH_DICTIONARY_STATEMENT, sql.SQL_GRANT_LIST_CLAUSE, sql.CROACH_CREATE_STATISTICS_STATEMENT, sql.SQL_USING_CLAUSE, sql.MYSQL_CREATE_EVENT_STATEMENT, JS:FROM_CLAUSE, sql.SQL_AGGREGATE_REFERENCE, sql.SQL_EXPLICIT_TABLE_WITH_ORDINALITY_EXPRESSION, sql.SQL_CHECK_CONSTRAINT_DEFINITION, PostCSS.POST_CSS_CUSTOM_SELECTOR, java.THROWS_LIST, gr.TYPE_PARAMETER, JS:AWAITED_TYPE, sql.SQL_CLOSE_CURSOR_STATEMENT, sql.MSSQL_CREATE_FULLTEXT_CATALOG_STATEMENT, sql.MSSQL_CREATE_QUEUE_STATEMENT, xml.ElementStubSerializer, JS:ACTIONSCRIPT_PARAMETER, sql.PG_CREATE_CONVERSION_STATEMENT, sql.SQL_COLLATE_CONSTRAINT_DEFINITION, sql.SQL_TABLE_TYPE_ELEMENT, sql.DB2_CREATE_DATABASE_PARTITION_GROUP_STATEMENT, sql.SQL_INSERT_STATEMENT, sql.MYSQL_PERIOD_DEFINITION, sql.PG_CREATE_SUBSCRIPTION_STATEMENT, protobufENUM_DEFINITION, java.PROVIDES_WITH_LIST, sql.SQL_BATCH_BLOCK, sql.SQLITE_CREATE_VIRTUAL_TABLE_STATEMENT, sql.VERT_ALTER_AUTH_METHOD_STATEMENT, sql.EXA_CREATE_CONNECTION_STATEMENT, sql.SQL_COLUMN_GENERATED_CLAUSE, JS:EXTERNAL_MODULE_REFERENCE, NG-META:OBJECT, sql.SQL_CREATE_ROLE_STATEMENT, gr.PARAMETER, java.PERMITS_LIST, sql.MSSQL_CREATE_TABLE_TYPE_STATEMENT, sql.SQL_TRIGGER_SHORT_REFERENCE, sql.VERT_ALTER_SUBNET_STATEMENT, sql.SQL_UNIQUE_CONSTRAINT_DEFINITION, sql.DB2_CREATE_AUDIT_POLICY_STATEMENT, sql.ORA_PROCEDURE_DECLARATION, JS:TYPESCRIPT_IMPORT_STATEMENT, sql.DB2_CREATE_HISTOGRAM_TEMPLATE_STATEMENT, sql.SFLAKE_CREATE_TASK_STATEMENT, kotlin.FILE, sql.SQL_CONNECTION_REFERENCE, sql.SQL_PARAMETER_REFERENCE, sql.SQL_ALTER_TABLESPACE_STATEMENT, JS:ACTIONSCRIPT_FUNCTION, sql.SQL_CREATE_EXTERNAL_SCHEMA_STATEMENT, sql.MSSQL_CREATE_BROKER_PRIORITY_STATEMENT, sql.PG_CREATE_SERVER_STATEMENT, sql.SQL_INTERSECT_EXPRESSION, sql.SQL_SAVEPOINT_REFERENCE, sql.ASE_CREATE_LOGIN_PROFILE_STATEMENT, sql.SQL_PARENTHESIZED_EXPRESSIONS, sql.PG_CREATE_PROCEDURE_STATEMENT, JS:ASSIGNMENT_EXPRESSION, VUE:TEMPLATE_TAG, sql.MSSQL_CREATE_STATISTICS_STATEMENT, sql.MSSQL_TRANSACTION_DEFINITION, sql.SQL_RETURNS_CLAUSE, JS:JSDOC_SINGLE_TYPE, sql.ORA_EXCEPTION_DEFINITION, JS:TSX_TAG_TYPE_ARGUMENT_LIST, kotlin.ESCAPE_STRING_TEMPLATE_ENTRY, sql.SQL_TABLE_TYPE_REFERENCE, SCSS.SCSS_VARIABLE_DECLARATION, JS:TYPESCRIPT_NEW_EXPRESSION, sql.SQL_TABLE_PROCEDURE_CALL_EXPRESSION, JS:FORMAL_PARAMETER, kotlin.MODIFIER_LIST, JS:TYPESCRIPT_TYPE_ALIAS, sql.MSSQL_CREATE_WORKLOAD_GROUP_STATEMENT, sql.SQL_WHERE_CLAUSE, kotlin.CONSTRUCTOR_CALLEE, sql.MSSQL_CREATE_ASSEMBLY_STATEMENT, sql.ORA_MEMBER_FUNCTION_DEFINITION, JS:TUPLE_TYPE, sql.VERT_ALTER_NETWORK_INTERFACE_STATEMENT, JS:TYPE_PREDICATE, protobufEXTEND_BODY, sql.MSSQL_CREATE_EVENT_SESSION_STATEMENT, JS:JSDOC_FUNCTION_TYPE, sql.ORA_CREATE_CONTEXT_STATEMENT, sql.SQL_INSERT_OVERRIDING_CLAUSE, sql.VERT_CREATE_SUBNET_STATEMENT, kotlin.TYPE_CODE_FRAGMENT, sql.VERT_CREATE_NOTIFIER_STATEMENT, JS:ATTRIBUTE_NAME_VALUE_PAIR, LESS.LESS_MIXIN, sql.SQL_ARGUMENT_REFERENCE, sql.SQL_RAISE_STATEMENT, sql.SQL_CREATE_INDEX_STATEMENT, sql.SQL92_CREATE_MODULE_STATEMENT, sql.GPLUM_CREATE_OPERATOR_FAMILY_STATEMENT, sql.MSSQL_CREATE_LOGIN_STATEMENT, sql.PG_CREATE_FUNCTION_STATEMENT, sql.PG_CREATE_USER_MAPPING_STATEMENT, sql.SQL_CHARSET_REFERENCE, sql.SQL_CREATE_FUNCTION_STATEMENT, sql.SQL_NAMED_PARAMETER_VALUE, kotlin.FUNCTION_TYPE_RECEIVER, sql.SQL_ORDER_BY_TAIL, sql.SQL_LABEL_REFERENCE, NG-META:ARRAY, PostCSS.POST_CSS_CUSTOM_MEDIA, NG-HTML:EXTERNAL_ID_PREFIX, sql.SQL_LABEL_BACK_REFERENCE, sql.SQL_VARIABLE_DEFINITION, sql.SQL_JSON_COLUMNS_CLAUSE, sql.GPLUM_ALTER_RULE_STATEMENT, sql.SQL_CREATE_TABLE_STATEMENT, sql.SQL_SET_CLAUSE, sql.HIVE_CREATE_POOL_STATEMENT, sql.SQL_PARAMETER_LIST, sql.SQL_CREATE_DOMAIN_STATEMENT, sql.VERT_CREATE_MODEL_STATEMENT, sql.DB2_CREATE_WORK_ACTION_SET_STATEMENT, NG-HTML:NG_CONTENT_SELECTOR, JS:USE_NAMESPACE_DIRECTIVE, SCSS.SCSS_PLACEHOLDER_SELECTOR, sql.SQL_LIMIT_CLAUSE, sql.ODBC_FUNCTION_CALL, JS:TYPESCRIPT_FUNCTION, JS:IMPORTED_BINDING, sql.GPLUM_CREATE_TEXT_SEARCH_TEMPLATE_STATEMENT, sql.SQL_ALTER_SEQUENCE_STATEMENT, protobufFIELD_DEFINITION, protobufSERVICE_BODY, sql.SQL_UNKNOWN_STATEMENT, kotlin.CONTRACT_EFFECT, JS:TYPESCRIPT_ENUM, JS:TUPLE_MEMBER_ELEMENT, sql.PG_CREATE_OPERATOR_CLASS_STATEMENT, sql.SQL_ROLLBACK_STATEMENT, kotlin.CONTRACT_EFFECT_LIST, sql.SQL_CREATE_VIEW_STATEMENT, JS:FUNCTION_DECLARATION, sql.SQL_DOMAIN_REFERENCE, java.METHOD, gr.ANNOTATION, sql.ORA_CREATE_PACKAGE_STATEMENT, java.CLASS, kotlin.FUNCTION_TYPE, protobufEXTEND_DEFINITION, sql.MSSQL_ALTER_FUNCTION_STATEMENT, sql.VERT_ALTER_QUERY_STATEMENT, kotlin.SCRIPT, sql.SQL_POSITIONAL_REFERENCE, sql.SFLAKE_CREATE_WAREHOUSE_STATEMENT, sql.ORA_CREATE_AUDIT_POLICY_STATEMENT, NG-META:REFERENCE, gr.ANNOTATION_TYPE_DEFINITION, sql.SFLAKE_CREATE_NOTIFICATION_INTEGRATION_STATEMENT, NG:STUB_VERSION, kotlin.FILE_ANNOTATION_LIST, sql.SQL_TYPE_ELEMENT_EXT, sql.MSSQL_CREATE_XML_SCHEMA_COLLECTION_STATEMENT, sql.SQL_TIMESTAMP_LITERAL, JS:VAR_STATEMENT, sql.SQL_LANGUAGE_CLAUSE, JS:TYPE_PARAMETER_DEFAULT, sql.SQL_JOIN_CONDITION_CLAUSE, sql.SQL_COLLATION_REFERENCE, CSS.CSS_IMPORT, sql.CROACH_CREATE_VIEW_STATEMENT, protobufCONSTANT, kotlin.PACKAGE_DIRECTIVE, VUE-JS:V_FOR_VARIABLE, java.PARAMETER, gr.CONSTRUCTOR, sql.SQL_PROFILE_REFERENCE, sql.SQL_STATEMENT_REFERENCE, sql.SQL_PARENTHESIZED_QUERY_EXPRESSION, gr.ENUM_CONSTANT_INITIALIZER, kotlin.ANNOTATION_ENTRY, kotlin.INTEGER_CONSTANT, sql.RS_CREATE_GROUP_STATEMENT, JS:ES6_EMBEDDED_CONTENT, sql.MYSQL_CREATE_SAVEPOINT_STATEMENT, JS:NUMBER_LITERAL_TYPE, sql.SQL_REPEAT_LOOP_STATEMENT, sql.SQL_TRIGGER_EVENT_CLAUSE, kotlin.CLASS_BODY, sql.SQL_CREATE_SYNONYM_STATEMENT, protobufFIELD_LABEL, JS:EXPORT_DECLARATION, sql.SQL_ERROR_CODE_SPEC, sql.HIVE_CREATE_TEMPORARY_FUNCTION_STATEMENT, sql.SQL_RESIGNAL_STATEMENT, kotlin.TYPE_PARAMETER, kotlin.TYPE_REFERENCE, kotlin.STRING_TEMPLATE, sql.SQL_SELECT_OPTION, kotlin.PRIMARY_CONSTRUCTOR, kotlin.CONTEXT_RECEIVER, gr.PACKAGE_DEFINITION, sql.ORA_CREATE_TYPE_STATEMENT, kotlin.ANNOTATION_TARGET, NG-HTML:REFERENCE_VARIABLE, kotlin.ENUM_ENTRY, sql.SQL_TRIGGER_REFERENCE, gr.METHOD, gr.TYPE_PARAMETER_BOUNDS_LIST, sql.SQL_CONDITION_DEFINITION, sql.CH_CREATE_ROW_POLICY_STATEMENT, sql.SQL_REFERENCE_LIST, sql.SQL_RENAME_TO_CLAUSE, sql.SQL_TYPE_REFERENCE, NG-META:SPREAD, sql.ODBC_DATE_TIME_TYPES, sql.SQL_PROCEDURE_DEFINITION, sql.HSQL_CREATE_ALIAS_STATEMENT, JS:NAMESPACE_DECLARATION, java.EXTENDS_LIST, xml.AttributeStub, java.IMPORT_STATEMENT, sql.DB2_CREATE_USAGE_LIST_STATEMENT, sql.JDBC_PROCEDURE_CALL, java.FIELD, JS:FLOW_FUNCTION_SIGNATURE, JS:TYPESCRIPT_ENUM_FIELD, CSS.CSS_STYLESHEET, sql.PG_ALTER_POLICY_STATEMENT, sql.SQL_TABLE_EXPRESSION, sql.MSSQL_CREATE_EXTERNAL_DATA_SOURCE_STATEMENT, sql.MSSQL_CREATE_STOPLIST_STATEMENT, sql.CROACH_CREATE_SAVEPOINT_STATEMENT, sql.SQL_GENERIC_DROP_STATEMENT, NG-META:NODE_MODULE, LESS.LESS_PRIMITIVE_MIXIN, kotlin.INITIALIZER_LIST, VUE:STUBBED_TAG, kotlin.NULLABLE_TYPE, JS:JSDOC_PROPERTY_SIGNATURE, sql.CASS_CREATE_INDEX_STATEMENT, sql.SQL_CREATE_PREPARED_STATEMENT, NG-HTML:LET_VARIABLE, JS:EMBEDDED_EXPRESSION, sql.SQL_SELECT_CLAUSE, sql.SQL_CATALOG_REFERENCE, sql.SFLAKE_CREATE_NETWORK_POLICY_STATEMENT, sql.SQL_CREATE_TYPE_STATEMENT, sql.SQL_OPERATOR_SIGNATURE, JS:ES6_EXTENDS_LIST, sql.SQL_CORRESPONDING_CLAUSE, gr.ANNOTATION_METHOD, JS:EXTENDS_LIST_MEMBER, JS:INDEX_SIGNATURE, sql.SQL_UNARY_EXPRESSION, java.MODIFIER_LIST, sql.SQL_TABLE_COLUMNS_LIST, NG-META:DIRECTIVE, protobufEXTENSION_STATEMENT, sql.PG_CREATE_LANGUAGE_STATEMENT, protobufRESERVED_STATEMENT, sql.SQL_CONSTRAINT_CHARACTERISTIC_CLAUSE, sql.SQL_ALTER_CATALOG_STATEMENT, JS:IMPORT_STATEMENT, sql.ASE_CREATE_RULE_STATEMENT, sql.VERT_ALTER_NODE_STATEMENT, JS:ES6_PROPERTY, sql.SQL_OWNER_TO_CLAUSE, sql.SQL_DEFAULT_CONSTRAINT_DEFINITION, VUE-JS:SCRIPT_SETUP_PARAMETER, java.EXTENDS_BOUND_LIST, JS:FUNCTION_PROPERTY, NG-META:CLASS, gr.IMPORT, LESS.LESS_VARIABLE_DECLARATION, gr.MODIFIER_LIST, protobufENUM_BODY, sql.CROACH_CREATE_MATERIALIZED_VIEW_STATEMENT, protobufENUM_VALUE, java.RECORD_HEADER, sql.SQL_PARTITION_DEFINITION, sql.DB2_CREATE_MODULE_STATEMENT, sql.ORA_CREATE_LIBRARY_STATEMENT, sql.SQL_CREATE_ASSERTION_STATEMENT, sql.GPLUM_CREATE_SEQUENCE_STATEMENT, sql.SQL_SELECT_INTO_NEW_TABLE_CLAUSE, sql.DB2_CREATE_SERVICE_CLASS_STATEMENT, sql.SQL_PIVOT_COLUMN_DEFINITION, JS:TSX_EMBEDDED_CONTENT, sql.SQL_ELSE_CLAUSE, sql.PG_CREATE_POLICY_STATEMENT, GroovyANNOTATION_ARGUMENT_LIST, sql.SQL_INSERT_DML_INSTRUCTION, SASS.SASS_MIXIN_DECLARATION, sql.VERT_ALTER_LIBRARY_STATEMENT, sql.MSSQL_CREATE_CREDENTIAL_STATEMENT, GroovyENUM_BODY, JS:TEMPLATE_LITERAL_TYPE, sql.SQL_TRUNCATE_TABLE_STATEMENT, gr.ANNOTATION_MEMBER_VALUE_PAIR, sql.SQL_REPLACE_COLUMN_CLAUSE, sql.SFLAKE_CREATE_API_INTEGRATION_STATEMENT, sql.CH_CREATE_SETTINGS_PROFILE_STATEMENT, sql.DB2_CREATE_NICKNAME_STATEMENT, sql.MSSQL_CREATE_SERVER_AUDIT_STATEMENT, sql.PG_CREATE_RULE_STATEMENT, sql.GPLUM_CREATE_TEXT_SEARCH_DICTIONARY_STATEMENT, sql.SQL_PRIMARY_KEY_DEFINITION, JS:UNION_OR_INTERSECTION_TYPE, java.EXPORTS_STATEMENT, sql.SQL_ALTER_SCHEMA_STATEMENT, sql.MSSQL_CREATE_RESOURCE_POOL_STATEMENT, protobufMESSAGE_VALUE, JS:DESTRUCTURING_PROPERTY, sql.SQL_NAMED_QUERY_DEFINITION, JS:INFER_TYPE, protobufFIELD_ASSIGN, sql.SQL_DELETE_DML_INSTRUCTION, sql.PG_CREATE_GROUP_STATEMENT, sql.ORA_CREATE_RESTORE_POINT_STATEMENT, VUE:STUBBED_ATTRIBUTE, JS:DESTRUCTURING_OBJECT, sql.SQL_ON_TARGET_CLAUSE, sql.DB2_CREATE_BUFFERPOOL_STATEMENT, sql.SQL_WHEN_CLAUSE, sql.ORA_FLASHBACK_TABLE_STATEMENT, sql.SQL_FROM_CLAUSE, JS:MOD_FLOW_EMBEDDED_CONTENT, CSS.CSS_RULESET, sql.SQL_ALTER_DOMAIN_STATEMENT, sql.SQL_WITH_CLAUSE, sql.ASE_CREATE_SERVICE_STATEMENT, sql.SQL_COLLATE_CLAUSE, JS:FUNCTION_TYPE, JS:FLOW_FUNCTION_TYPE, sql.SQL_ALIAS_TYPE_DEFINITION, sql.SQL_TYPE_PARAMETER_LIST, sql.SQL_EXPLAIN_STATEMENT, gr.THROWS_CLAUSE, sql.SQL_CREATE_SEQUENCE_STATEMENT, JS:FUNCTION_SIGNATURE, CSS.CSS_SELECTOR, GroovyPARAMETER_LIST, sql.MSSQL_CREATE_MESSAGE_TYPE_STATEMENT, sql.SQL_EXPLICIT_TABLE_EXPRESSION, SCSS.SCSS_PARAMETER, sql.SQL_GENERIC_DEFINITION, sql.MSSQL_CREATE_CRYPTOGRAPHIC_PROVIDER_STATEMENT, sql.ODBC_DATE, sql.PG_CREATE_TEXT_SEARCH_PARSER_STATEMENT, sql.SQL_PARAMETER_NAME_REFERENCE, sql.SQL_FUNCTION_CALL, protobufFIELD_OPTION, JS:INCLUDE_DIRECTIVE, kotlin.IMPORT_DIRECTIVE, sql.GPLUM_CREATE_MATERIALIZED_VIEW_STATEMENT, JS:RETURN_STATEMENT, VUE-JS:SLOT_PROPS_PARAMETER, sql.SFLAKE_CREATE_STORAGE_INTEGRATION_STATEMENT, protobufARRAY_VALUE, sql.SQL_SCHEMA_REFERENCE, sql.SQL_TABLE_PARTITIONS_CLAUSE, sql.PG_CREATE_SAVEPOINT_STATEMENT, CSS.CSS_SIMPLE_SELECTOR, sql.SQL_TABLESPACE_REFERENCE, JS:DESTRUCTURING_ARRAY_REST, sql.DB2_CREATE_WRAPPER_STATEMENT, JS:EMPTY_EXPRESSION, JS:NAMED_GENERIC_ARG, sql.SQL_TYPE_DEFINITION, gr.TRAIT_TYPE_DEFINITION, sql.GPLUM_CREATE_PROCEDURE_STATEMENT, java.IMPORT_LIST, sql.ODBC_ESCAPE, sql.EXA_CREATE_SCRIPT_STATEMENT, sql.MYSQL_CREATE_PACKAGE_BODY_STATEMENT, sql.PG_CREATE_SEQUENCE_STATEMENT, SCSS.SCSS_STYLESHEET, sql.SQL_COLUMN_DEFINITION_IN_TYPE, sql.SQL_COLUMN_GENERATED_AS_IDENTITY_CLAUSE, VUE:SRC_ATTRIBUTE, sql.ODBC_TIMESTAMP, JS:JSDOC_DECORATED_TYPE, kotlin.SUPER_TYPE_ENTRY, JS:ES6_DECORATOR, VUE:REF_ATTRIBUTE, sql.SQL_CURSOR_DEFINITION, sql.CROACH_CREATE_SCHEDULE_STATEMENT, NG-META:STRING, CSS.CSS_SELECTOR_LIST, kotlin.CLASS, java.OPENS_STATEMENT, sql.GPLUM_CREATE_SAVEPOINT_STATEMENT, sql.SQL_INJECTED_LITERAL, sql.SQL_TABLE_ELEMENT_LIST, sql.SQL_GENERIC_ELEMENT, java.PROVIDES_STATEMENT, JS:LOCAL_VARIABLE, sql.SQL_CONSTRAINT_DEFINITION, sql.GPLUM_CREATE_RESOURCE_QUEUE_STATEMENT, sql.ORA_CREATE_ROLLBACK_SEGMENT_STATEMENT, protobufENUM_VALUE_OPTION, sql.SQL_USE_SCHEMA_STATEMENT, sql.DB2_CREATE_PERMISSION_STATEMENT, sql.VERT_CREATE_NETWORK_INTERFACE_STATEMENT, protobufONEOF_BODY, GroovyTYPE_PARAMETER_LIST, sql.SQL_STATEMENT, JS:CONST_TYPE, kotlin.TYPE_ARGUMENT_LIST, sql.SQL_CURSOR_REFERENCE, sql.CASS_CREATE_TRIGGER_STATEMENT, sql.DB2_CREATE_WORK_CLASS_SET_STATEMENT, JS:BOOLEAN_LITERAL_TYPE, NG-META:EXTERNAL_PREFIX_ID, JS:NEW_EXPRESSION, sql.SQL_WITH_ORDINALITY_CLAUSE, sql.MSSQL_CREATE_RULE_STATEMENT, sql.SQL_VISIBILITY_CLAUSE, java.REQUIRES_STATEMENT, JS:XML_JS_GENERIC_ARG_SCRIPT, sql.SQL_PIVOT_COLUMNS_CLAUSE, sql.SQL_COLUMN_ALIAS_LIST, NG:TEMPLATE_VARIABLE, sql.SQL_TYPE_ATTR_SHORT_REFERENCE, JS:DESTRUCTURING_ARRAY, JS:DOC_COMMENT, JS:TYPESCRIPT_FUNCTION_EXPRESSION, sql.SQL_WINDOW_REFERENCE, java.ANONYMOUS_CLASS, sql.ORA_REF_CONSTRAINT, java.RECORD_COMPONENT, kotlin.VALUE_PARAMETER_LIST, sql.SQL_NULL_STATEMENT, sql.SQL_THEN_CLAUSE, sql.SQL92_PERIOD_DEFINITION, sql.PG_CREATE_TABLE_STATEMENT, sql.PG_ALTER_TRIGGER_STATEMENT, sql.ORA_CREATE_FLASHBACK_ARCHIVE_STATEMENT, sql.GPLUM_CREATE_GROUP_STATEMENT, JS:CLASS, sql.PG_CREATE_VIEW_STATEMENT, protobufRPC_DEFINITION, JS:TYPESCRIPT_PARAMETER, sql.SQL_GENERIC_SETTINGS_CLAUSE, sql.SQL_CONTINUE_STATEMENT, sql.H2_CREATE_CONSTANT_STATEMENT, sql.MYSQL_CREATE_LOGFILE_GROUP_STATEMENT, sql.CROACH_CREATE_TABLE_STATEMENT, protobufRESERVED_NAME, kotlin.ENUM_ENTRY_SUPERCLASS_REFERENCE_EXPRESSION, protobufSTRING_VALUE, kotlin.EXPRESSION_CODE_FRAGMENT, JS:EXPORT_ASSIGNMENT, kotlin.LAMBDA_ARGUMENT, sql.SQL_EXTERNAL_SCHEMA_REFERENCE, sql.SQL_FOREIGN_KEY_REFERENCES_CLAUSE, sql.SQL_NUMERIC_LITERAL, sql.PG_ALTER_RULE_STATEMENT, sql.SQL_FOREIGN_TABLE_REFERENCE, sql.SQL_UPDATE_STATEMENT, java.ANNOTATION, sql.SQL_METHOD_DEFINITION, JS:SINGLE_TYPE, kotlin.DELEGATED_SUPER_TYPE_ENTRY, sql.SQL_TRANSLATION_REFERENCE, LESS.LESS_STYLESHEET, sql.SQL_XML_NAMESPACES_CLAUSE, sql.VERT_ALTER_POLICY_STATEMENT, sql.SQL_TABLE_REFERENCE, sql.SQL_USE_NAMESPACE_STATEMENT, sql.DERBY_RENAME_STATEMENT, kotlin.TYPE_CONSTRAINT_LIST, sql.SQL_LOOP_STATEMENT, sql.CH_CREATE_QUOTA_STATEMENT, sql.DB2_CREATE_SECURITY_LABEL_COMPONENT_STATEMENT, sql.MSSQL_CREATE_ENCRYPTION_KEY_STATEMENT, sql.SQL_INDEX_REFERENCE, sql.SQL_VALUE_REFERENCE, sql.MSSQL_CREATE_SERVICE_STATEMENT, gr.RECORD_TYPE_DEFINITION, CSS.CSS_ATTRIBUTE, sql.GPLUM_CREATE_TABLE_STATEMENT, CSS.CSS_PSEUDO_PAGE, CSS.CSS_CUSTOM_MIXIN, JS:FLOW_JS_FUNCTION, JS:DEFINITION_EXPRESSION, JS:PARENTHESIZED, sql.VERT_CREATE_NODE_STATEMENT, JS:LITERAL_EXPRESSION, sql.SQL_DEFINITION_HOLDER_STATEMENT, sql.SQL_PARENTHESIZED_JOIN_EXPRESSION, SCSS.SCSS_FUNCTION_DECLARATION, sql.DB2_CREATE_WORKLOAD_STATEMENT, sql.VERT_CREATE_POLICY_STATEMENT, kotlin.TYPE_CONSTRAINT, JS:INDEXED_ACCESS_TYPE, SCSS.SCSS_PARAMETER_LIST, kotlin.SECONDARY_CONSTRUCTOR, sql.SQL_IF_STATEMENT, sql.SQL_PATH_LITERAL, JS:FIELD, VUE:SCRIPT_ID_ATTRIBUTE, NG-HTML:STUB_VERSION, gr.PERMITS_CLAUSE, kotlin.INTERSECTION_TYPE, sql.SQL_DECLARE_HANDLER_STATEMENT, gr.VARIABLE_DECLARATION, JS:FUNCTION_EXPRESSION, sql.SFLAKE_CREATE_FILE_FORMAT_STATEMENT, sql.REDIS_UPSERT_LIST_STATEMENT, sql.SQL_ALIAS_TYPE_REFERENCE, sql.SQL_LABEL_DEFINITION, JS:EXTENDS_LIST, sql.SQL_RETURNING_EXPRESSION, JS:STATIC_BLOCK, sql.REDIS_UPSERT_SORTED_SET_STATEMENT, JS:ENTITY_NAME, sql.SQL_ATTRIBUTE_DEFINITION, sql.DB2_CREATE_SERVER_STATEMENT, java.ENUM_CONSTANT, NG-META:STUB_VERSION]
    at com.intellij.openapi.diagnostic.Logger.error(Logger.java:202)
    at com.intellij.psi.stubs.IStubElementType.checkNotInstantiatedTooLateWithId(IStubElementType.java:42)
    at com.intellij.psi.stubs.IStubElementType.<init>(IStubElementType.java:26)
    at io.kanro.idea.plugin.protobuf.lang.psi.stub.type.ProtobufStubTypeBase.<init>(ProtobufStubTypeBase.kt:21)
    at io.kanro.idea.plugin.protobuf.lang.psi.stub.type.ProtobufEnumStubType.<init>(ProtobufEnumStubType.kt:8)
    at io.kanro.idea.plugin.protobuf.lang.psi.stub.type.ProtobufEnumStubType.<clinit>(ProtobufEnumStubType.kt)
    at io.kanro.idea.plugin.protobuf.lang.psi.stub.type.ProtobufStubTypes.get(ProtobufStubTypes.kt:15)
    at io.kanro.idea.plugin.protobuf.lang.psi.ProtobufTypes.<clinit>(ProtobufTypes.java:17)
    at java.base/jdk.internal.misc.Unsafe.ensureClassInitialized0(Native Method)
    at java.base/jdk.internal.misc.Unsafe.ensureClassInitialized(Unsafe.java:1155)
    at java.base/jdk.internal.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(UnsafeFieldAccessorFactory.java:42)
    at java.base/jdk.internal.reflect.ReflectionFactory.newFieldAccessor(ReflectionFactory.java:185)
    at java.base/java.lang.reflect.Field.acquireFieldAccessor(Field.java:1132)
    at java.base/java.lang.reflect.Field.getFieldAccessor(Field.java:1113)
    at java.base/java.lang.reflect.Field.get(Field.java:425)
    at com.intellij.psi.stubs.StubFieldAccessor.get(StubFieldAccessor.java:26)
    at com.intellij.psi.stubs.StubFieldAccessor.get(StubFieldAccessor.java:7)
    at com.intellij.psi.stubs.StubSerializerEnumerator.assignId(StubSerializerEnumerator.java:87)
    at com.intellij.psi.stubs.SerializationManagerImpl.registerSerializer(SerializationManagerImpl.java:196)
    at com.intellij.psi.stubs.SerializationManagerImpl.initSerializers(SerializationManagerImpl.java:282)
    at com.intellij.psi.stubs.StubUpdatingIndex$1.getSubIndexerVersion(StubUpdatingIndex.java:140)
    at com.intellij.psi.stubs.StubUpdatingIndex$1.getSubIndexerVersion(StubUpdatingIndex.java:125)
...
yexua commented 1 year ago

I have the same problem!

devkanro commented 1 year ago

This is very strange, because I did not modify the relevant content, and this exception did not appear when testing.

It seems that JetBrains' own plugins also have such exceptions, and I will continue to investigate.

devkanro commented 1 year ago

I just tried to fix everything that was suspicious, if you are handy you can download the EAP version from the link below and help me check if the exception is still there.

https://github.com/devkanro/intellij-protobuf-plugin/discussions/165

nofarius commented 1 year ago

I just tried disabling all downloaded plugins, disabling the built-in proto and grpc plugins and updating to the EAP 1.7.1 version, and I still get the same error 😢

devkanro commented 1 year ago

@nofarius Does the exception occur after opening the project? Can you invalidate cache(File -> Invalidate Caches...) and import the project again?

devkanro commented 1 year ago

I can't reproduce this exception... What is your project language and build tool? Java? Go? Maven? Gradle?

nofarius commented 1 year ago

The invalidating caches seem to have fixed it. Did the following and now it's working

  1. Disable the built-in proto/grpc plugins
  2. Restart intellij
  3. Enable v1.7.1 protobuf plugin
  4. Invalidate caches and restart -> loads without error

Testing rolling back to 1.7.0:

  1. Uninstall 1.7.1, and restart
  2. Install 1.7.0 from marketplace -> intellij errored and crashed
  3. Restarting intellij -> error
  4. Invalidating caches and restarting -> intellij works fine

So seems invalidating caches works for 1.7.0 as well

devkanro commented 1 year ago

OK, this seems to be a bug in JB's handling of the Stub cache after the IDEA upgrade

nofarius commented 1 year ago

It seems I jumped the gun, it works until you restart intellij again. Getting the same error after restarting

  1. Invalidate caches and restart -> works
  2. Close and reopen intellij -> errors

What is your project language and build tool? Java? Go? Maven? Gradle?

Java and Maven

nofarius commented 1 year ago

Bit more info trying to isolate/replicate

In a 2-project setup

The below is after invalidating caches

Opening the example-proto project, and reopening, no errors

Opening the example-service project (no error). Then wait for caches/indexes to complete. Close and reopen intellij and then it errors loading the example-service project

devkanro commented 1 year ago

Could you provide the code of the example-proto and example-service?

devkanro commented 1 year ago

I couldn't reproduce this problem in debug environment, but it did appear after upgrading my IDEA.

image

I'm guessing it has something to do with this new feature added in 2023.1

image

devkanro commented 1 year ago

But after I restart IDEA, the exception disappeared...

All stub index function works...

nofarius commented 1 year ago

Could you provide the code of the example-proto and example-service?

They were just example names, they're not really projects I can share as they contain proprietary code, sorry! It was more meant to describe that we use 2 projects, one for the proto files exclusively, and the other for the actual java grpc service implementation that references the proto project as a maven dependency (we don't store them in the same project).

Adding some more test cases

No projects open, opening example-proto first

  1. Opening intellij with no projects open
  2. Select example-proto from the list of previously opened projects
    • No error
  3. Open the example-service project
    • No error, everything works fine

No projects open, opening example-service first

  1. Opening intellij with no projects open
  2. Select example-service from the list of previously opened projects
    • Error occurs

Both projects open, example-proto in focus

In the below test case, I'm using the intellij project tabs, with the selected tab being referred to the one "in focus"

  1. Open both example-proto and example-service
  2. Exit intellij so that it auto-opens these projects next time
    • Ensure that example-proto is the project in focus so that this one loads in focus when intellij is re-opened
  3. Reopen intellij, example-proto project is in focus
    • No Error occurs
  4. Switch to the example-service tab
    • No error, everything works fine

Both projects open, example-service in focus

In the below test case, I'm using the intellij project tabs, with the selected tab being referred to the one "in focus"

  1. Open both example-proto and example-service
  2. Exit intellij so that it auto-opens these projects next time
    • Ensure that example-service is the project in focus so that this one loads in focus when intellij is re-opened
  3. Reopen intellij, example-service project is in focus
    • Error occurs

Conclusion

The error seems to only occur in the java service implementation project, not the proto-only project. Having intellij load successfully with the proto project stops the error from occurring at all, even when loading the java service project afterwards.

Maybe the issue with the stub index is specifically related to interactions when intellij is also loading java indexes?

If you are trying to replicate this using a project that only contains a proto file then this may explain why it works for you. Do you have a project that you can test with that contains a java implementation of the grpc service defined in the proto?

devkanro commented 1 year ago

Our backend service also contains a pure proto gradle project for sharing with other teams like client and web, and a corresponding backend implementation.

I will try your case in our project, but in terms of my usage, it seems that I have not encountered any problems so far.

zhaoshuxiang commented 1 year ago

I encountered the same problem.

devkanro commented 1 year ago

@zhaoshuxiang @nofarius Please try #169

I am trying make some tricks to fix it

devkanro commented 1 year ago

@zhaoshuxiang @nofarius any updates?

nofarius commented 1 year ago

Hey @devkanro, looks like it is now working. Repeating the tests I did above, the ones that were failing are now working :partying_face:

devkanro commented 1 year ago

Looks like my trick worked, I will release a new hotfix version soon

devkanro commented 1 year ago

Fixed in 1.7.11

ptxmac commented 1 year ago

This version isn't on the marketplace yet: https://plugins.jetbrains.com/plugin/16422-protobuf/versions

devkanro commented 1 year ago

@ptxmac please check it again https://plugins.jetbrains.com/plugin/16422-protobuf/versions/stable/321456

ptxmac commented 1 year ago

Thanks!