@@ -284,34 +284,52 @@ public void executeDMLWithScriptShadowBufferWarnTest() throws IOException {
284
284
public void executeDMLWithScriptAndInfoTest () throws IOException {
285
285
String cl = "systemds -s \" print('hello')\" " ;
286
286
String [] args = cl .split (" " );
287
-
288
287
Logger .getLogger (DMLScript .class ).setLevel (Level .INFO );
289
288
final LoggingUtils .TestAppender appender = LoggingUtils .overwrite ();
290
- try {
289
+ try {
291
290
Assert .assertTrue (executeScript (args ));
292
291
final List <LoggingEvent > log = LoggingUtils .reinsert (appender );
293
- Assert .assertTrue (log .get (1 ).getMessage ().toString ().startsWith ("BEGIN DML run" ));
294
- Assert .assertTrue (log .get (2 ).getMessage ().toString ().startsWith ("Process id" ));
292
+ try {
293
+ int i = log .get (0 ).getMessage ().toString ().startsWith ("Low memory budget" ) ? 1 : 0 ;
294
+ Assert .assertTrue (log .get (i ++).getMessage ().toString ().startsWith ("BEGIN DML run" ));
295
+ Assert .assertTrue (log .get (i ).getMessage ().toString ().startsWith ("Process id" ));
296
+ } catch (Error e ) {
297
+ System .out .println ("ERROR while evaluating INFO logs: " );
298
+ for (LoggingEvent loggingEvent : log ) {
299
+ System .out .println (loggingEvent .getMessage ());
300
+ }
301
+ throw e ;
302
+ }
303
+
295
304
} finally {
296
305
LoggingUtils .reinsert (appender );
297
306
}
298
307
}
299
308
300
309
@ Test
301
310
public void executeDMLWithScriptAndDebugTest () throws IOException {
311
+ // have to run sequentially, to avoid concurrent call to Logger.getLogger(DMLScript.class)
302
312
String cl = "systemds -s \" print('hello')\" " ;
303
313
String [] args = cl .split (" " );
304
314
305
315
Logger .getLogger (DMLScript .class ).setLevel (Level .DEBUG );
306
- final LoggingUtils .TestAppender appender = LoggingUtils .overwrite ();
316
+ final LoggingUtils .TestAppender appender2 = LoggingUtils .overwrite ();
307
317
try {
308
318
Assert .assertTrue (executeScript (args ));
309
- final List <LoggingEvent > log = LoggingUtils .reinsert (appender );
310
- Assert .assertTrue (log .get (2 ).getMessage ().toString ().startsWith ("BEGIN DML run" ));
311
- Assert .assertTrue (log .get (3 ).getMessage ().toString ().startsWith ("DML script" ));
312
- Assert .assertTrue (log .get (4 ).getMessage ().toString ().startsWith ("Process id" ));
319
+ final List <LoggingEvent > log = LoggingUtils .reinsert (appender2 );
320
+ try {
321
+ int i = log .get (0 ).getMessage ().toString ().startsWith ("Low memory budget" ) ? 2 : 1 ;
322
+ Assert .assertTrue (log .get (i ++).getMessage ().toString ().startsWith ("BEGIN DML run" ));
323
+ Assert .assertTrue (log .get (i ++).getMessage ().toString ().startsWith ("DML script" ));
324
+ Assert .assertTrue (log .get (i ).getMessage ().toString ().startsWith ("Process id" ));
325
+ } catch (Error e ){
326
+ for (LoggingEvent loggingEvent : log ) {
327
+ System .out .println (loggingEvent .getMessage ());
328
+ }
329
+ throw e ;
330
+ }
313
331
} finally {
314
- LoggingUtils .reinsert (appender );
332
+ LoggingUtils .reinsert (appender2 );
315
333
}
316
334
}
317
335
}
0 commit comments