Reading `FileTimedDataPoint` locally

Using c3server version 7.8:

What is the correct way to set up a docker container running c3server to be able to create + read FileTimedDataPoint types using a local FileSystem?

Given the following type:

@db(partitionKeyField="parent")
type MyFileDataPoint mixes FileTimedDataPoint<MyMeasurementSeries, MyFileDataPoint> {

  @ts(unitPath='parent.unitConstraint', treatmentPath='parent.treatment')
  value: double

}

We have tried:

s = FileSystemConfig.make().getConfig();
s.default = 'c3fs;
s.setConfig(ConfigOverride.TAG);
s.evictFromCache();

Restarted, then ran:

MyFileDataPoint.upsertBatch([
    MyFileDataPoint.make({
        parent: {id: 'test'},
        value: 2,
        start: DateTime.nowWithoutZone()
    })
])

This runs without error, but then trying to call:

MyFileDataPoint.fetch()

throws the following error:

Action [9562.849801, Failed, Target failed
c3.love.exceptions.C3RuntimeException: wrapped EOFException

    at java.util.zip.GZIPInputStream.readUByte
    ...
    at c3.love.util.Content.decode (Content.java:741)
        at c3.love.exceptions.C3RuntimeException.wrapIt(C3RuntimeException.java:123) ~[c3-love-7.8.10-SNAPSHOT.jar:na]
        at c3.love.exceptions.C3RuntimeException.wrapIt(C3RuntimeException.java:81) ~[c3-love-7.8.10-SNAPSHOT.jar:na]

We also tried:

var s = FileSystemConfig.make().getConfig();

s.default = 'file';
s.file.enabled = true
var m = {
  "ARTIFACT": "file:///local_fs/packagemanager",
  "DATA_LOAD": "file:///local_fs/dl/mypackage/prod",
  "DEFAULT": "file:///local_fs/mypackage/prod",
  "ETL": "file:///local_fs/etl/mypackage/prod"
}

s.file.mounts = m;
s.setConfig(ConfigOverride.CLUSTER);
s.evictFromCache();

restarting, and doing a fetch call but ended up with the same error. I’d be happy to provide a full stack trace if needed, but is there a recommended approach to using the local FS for FileTimedDataPoints?

This is similar to what you are trying to do: How to provision seed data for FileTimedDataPoint

Your approach 1 looks right to me and should have worked. If you can validate that the approach in the other thread is the same as yours, I would qualify this as a regression and we should raise a ticket

Yep that’s what I used as a reference point to try to get this working. I missed @akatkinson’s comment where it needed to be configured at a Cluster level to work so I’ll retry with a fresh container. If it still doesn’t work I’ll make sure to put together a repro and open a ticket!