daphne-eu / daphne

DAPHNE: An Open and Extensible System Infrastructure for Integrated Data Analysis Pipelines
Apache License 2.0
67 stars 62 forks source link

DSL script triggers StringRefCounter destructor with existing references #888

Open philipportner opened 3 weeks ago

philipportner commented 3 weeks ago
bin/daphne --config UserConfig.json script.daphne                                                                                                                                                                    6s philipportner@dams-so012 22:18:25
[runtime D]: StringRefCounter::inc: ptr=140725047063942; arg= seconds.; not found and set to 2
79.1014
207.101
399.101
655.101
975.101
0.000097 seconds.
[runtime D]: StringRefCounter::dec: ptr=94739048154624; arg=0.000097; not found
[runtime D]: StringRefCounter::dec: ptr=140725047063942; arg= seconds.; found and decremented
[runtime D]: StringRefCounter::dec: ptr=94739049726544; arg=0.000097 seconds.; not found
[runtime W]: 1 string refs still present while destroying StringRefCounter - this should not happen.

Reproducible with the following script:

N = 8;
X = rand(N, N, 0.0, 1.0, 0.5, 123);
t0 = now();
X = X + 1;
print(sum(X));
X = X + 2;
print(sum(X));
X = X + 3;
print(sum(X));
X = X + 4;
print(sum(X));
X = X + 5;
print(sum(X));
print((as.f64(now()-t0)/1e9)+" seconds.");