yuqi1129 opened a new issue, #13045:
URL: https://github.com/apache/gravitino/issues/13045

   ### What would you like to be improved?
   
   `MiniGravitino` hardcodes the server it starts:
   
   ```java
   GravitinoServer.main(...)
   ```
   
   That is the right default, but it makes embedded mode unusable for any 
distribution that ships its own server entry point and initializes extra 
components in its own `GravitinoEnv` subclass. Such a build can run its 
integration tests only in deploy mode, which needs a packaged distribution.
   
   The failure mode is quiet rather than loud, which is the part worth fixing. 
In embedded mode the extra components are simply absent, so the event listeners 
that depend on them get a null service and every event handler throws:
   
   ```
   WARN  DataDiscoveryListener - Failed to handle event 
RegisterJobTemplateEvent@201b3159
   java.lang.NullPointerException: ... because "this.searchService" is null
   ```
   
   Those exceptions are logged by the listener framework and swallowed. The 
suite keeps running, the projections are never written, and assertions that 
tolerate an empty result pass. A test can therefore report success in embedded 
mode while exercising nothing.
   
   ### How should we improve?
   
   Let `MiniGravitinoContext` carry the server entry point (or the 
`GravitinoEnv` to initialize), defaulting to `GravitinoServer` so nothing 
changes for existing callers. A downstream distribution can then run the same 
integration tests in both modes.
   
   Worth considering alongside it: `EventListenerPluginWrapper` currently logs 
and swallows every listener failure. A repeated failure from the same listener 
is closer to a broken deployment than to a recoverable event, so surfacing it, 
or failing the listener after a threshold, would make this class of problem 
visible instead of silent.
   


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to