TranslateQueryResponse.getErrorsCount() for Java Google Cloud API (BigQuery Migration) doesn't work for me

38 Views Asked by At

I am working with the Java package: Google Cloud Bigquery Migration v2alpha, to translate SQL Teradata request into BigQuery.

With this small example, I want to catch an error during the translation (as you can see, "SELE" doesn't seem to be a very good SQL request):

public static void simpleTranslation(String project, String location) throws IOException {
        try (SqlTranslationServiceClient sqlTranslationServiceClient =
                SqlTranslationServiceClient.create()) {
            LocationName parent = LocationName.of(project, location);
            TranslateQueryRequest.SqlTranslationSourceDialect sourceDialect =
                    TranslateQueryRequest.SqlTranslationSourceDialect.forNumber(1);
            String query = "SELE";
            TranslateQueryResponse response =
                    sqlTranslationServiceClient.translateQuery(parent, sourceDialect, query);
            System.out.println("Translated query:\n----------\n" + response.getTranslatedQuery() + "----------");   
            System.out.println("Error count: " + response.getErrorsCount());
        } catch (IOException e) {
        System.out.println("Error during translation: " + e.toString());
      }
    }

I am using the function getErrorsCount() from TranslateQueryResponse class (doc).

I would except to get an error count of 1, however, when I run it, I get:

Translated query:
----------
-- ERROR_OTHER: Parser failed: After, got bare_identifier(SELE) but expected [<eof>, tok_semi, tok_lpar, ALTER, BEGIN, BT, CALL, CD, CHECK, CHECKPOINT, CM, COLLECT, COMMENT, COMMIT, CREATE, CT, CV, DATABASE, DEL, DELETE, DIAGNOSTIC, DROP, DUMP, ECHO, ET, EXEC, EXECUTE, EXPLAIN, FLUSH, GIVE, GRANT, HELP, INS, INSERT, LOCK, LOCKING, LOGGING, MERGE, MLOAD, MODIFY, RELEASE, RENAME, REPLACE, RESTART, RESTORE, REVOKE, ROLLBACK, SEL, SELECT, SET, SHOW, UPD, UPDATE, USING, WITH, kw_end(lookahead=TRANSACTION), kw_end(lookahead=FASTEXPORT), kw_end(lookahead=MLOAD), kw_end(lookahead=LOADING), kw_end(lookahead=QUERY), tok_lpar(lookahead=<type>)].
----------
Error count: 0

I am really wondering why the error count is 0.

(Btw, with another valid request, the translation works.)

0

There are 0 best solutions below