jackjlli commented on PR #13486: URL: https://github.com/apache/pinot/pull/13486#issuecomment-2284972824
Hi @abhioncbr, after looking at the exception message in the test a bit, I think in our tests when a table gets newly created, we should add some validation checks to make sure if the table is fully ready before testing out anything else. For example, in `testListConfigs()` in the `TableConfigsRestletResourceTest` class, we should add the following validation logic right after the table creation request is sent (in your PR, it should be added after Line 362): ``` String getExternalViewUrl = DEFAULT_INSTANCE.getControllerRequestURLBuilder().forTableExternalView(tableName1); TestUtils.waitForCondition(aVoid -> { // should wait for both realtime and offline table external view to be live. try { String externalViewJsonResponse = sendGetRequest(getExternalViewUrl); TableViews.TableView externalView = JsonUtils.stringToObject(externalViewJsonResponse, TableViews.TableView.class); return externalView._offline != null; } catch (IOException e) { return false; } }, 30_000L, "Failed to find the table creation from the ExternalView"); ``` Basically, we should never expect that all the znodes are created once the table creation request was made, as any updates on external view should be done by Helix controller. Same for other places where the table creation request was made in the same test class. @abhioncbr can you address that in your PR? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org For additional commands, e-mail: commits-h...@pinot.apache.org