Yes that's my problem. It is a format plugin and I want it included in dfs
storage plugin..

I see there is a format-maprdb in the contrib folder. I will do the same
format-msgpack.

Thanks
jc

On Thu, Sep 27, 2018 at 7:25 AM, Arina Yelchiyeva <
arina.yelchiy...@gmail.com> wrote:

> Jean-Claude,
>
> this is a good question. Previously new formats were added into the exec
> module and thus modifying bootstrap-storage-plugins.json was making sense.
> Since now we are adding new format plugins into the contrib directory, this
> raises the question on how to publish new format in dfs storage plugin.
> In StoragePluginRegistryImpl if we find several
> bootstrap-storage-plugins.json we load data from all of them but if there
> is a duplicate between storage plugins (ex: dfs), the duplicate would be
> ignored.
> Basically, we need to implement new mechanism that would merge two storage
> plugins formats.
>
> P.S.
> 1. There is a difference between storage plugin and storage format, I
> believe you have implemented the second.
> 2. I suggest we put all formats under contrib/format/.., so they are not
> confused with plugins.
>
> Kind regards,
> Arina
>
> On Thu, Sep 27, 2018 at 12:54 PM Vitalii Diravka <vita...@apache.org>
> wrote:
>
> > I'm not sure what you exactly mean. All *bootstrap-storage-plugins.json*
> > are registered and stored in Persistent Store
> > for the first fresh instantiating of Drill, see
> > *StoragePluginRegistryImpl.loadBootstrapPlugins()
> > *for details.
> >
> > I have noticed that you have a typo in the
> > *bootstrap-storage-plugins.json *file
> > name (boostrap -> *bootstrap*).
> >
> > Also you can use *storage-plugins-override.conf *for configuring plugins
> > configs during start-up [1].
> >
> > [1]
> >
> > https://drill.apache.org/docs/configuring-storage-plugins/#
> configuring-storage-plugins-with-the-storage-plugins-override.conf-file
> >
> >
> > On Wed, Sep 26, 2018 at 10:17 PM Jean-Claude Cote <jcc...@gmail.com>
> > wrote:
> >
> > > I see how the cluster.makeDataDir call will setup the configuration
> for a
> > > MsgpackFormatConfig. I'll update my test cases to use it.
> > >
> > > However there is another question related to this. If I don't modify
> the
> > > boostrap-storage-plugins.json then when I launch the drill-embeded it
> > does
> > > not know of the MsgpackFormatConfig. I need to use the web console to
> > edit
> > > the storage plugins.
> > >
> > > Is there a better way?
> > > Thanks
> > > Jean-Claude
> > >
> > >
> > > On Wed, Sep 26, 2018 at 1:17 PM, Arina Yelchiyeva <
> > > arina.yelchiy...@gmail.com> wrote:
> > >
> > > > Taking into the account that your code is in the contrib module,
> > > modifying
> > > > boostrap-storage-plugins.json does not make any sense.
> > > > If you need to add your own format in unit tests, as Vitalii pointed
> > out,
> > > > TestCsv is a good example for this.
> > > >
> > > > Kind regards,
> > > > Arina
> > > >
> > > > On Wed, Sep 26, 2018 at 7:07 PM Jean-Claude Cote <jcc...@gmail.com>
> > > wrote:
> > > >
> > > > > I found the cause of the problem I had. It was not due to the fact
> > that
> > > > the
> > > > > classloader did not find the resource. It is that my new
> FormatPlugin
> > > was
> > > > > not registered into the
> > > > >
> > drill\exec\java-exec\src\main\resources\bootstrap-storage-plugins.json
> > > > >
> > > > >     cp: {
> > > > >       type: "file",
> > > > >       connection: "classpath:///",
> > > > >       formats: {
> > > > >         "msgpack" : {
> > > > >           type: "msgpack",
> > > > >           extensions: [ "mp" ]
> > > > >         },
> > > > >
> > > > > So the resource was rejected. I've added this entry to the
> > > > > boostrap-storage-plugins.json and now it works.
> > > > >
> > > > > Thanks for all your help.
> > > > > Jean-Claude
> > > > >
> > > > >
> > > > >
> > > > > On Wed, Sep 26, 2018 at 7:18 AM, Arina Yelchiyeva <
> > > > > arina.yelchiy...@gmail.com> wrote:
> > > > >
> > > > > > This can also help:
> > > > > >
> > > > > > 1. create TEST resources folder where you'll copy your data.
> > > > > > 2. use dirTestWatcher to copy data to the root / tmp / custom
> > > > directory.
> > > > > > 3. query the data:
> > > > > >
> > > > > > @Test
> > > > > > public void t() {
> > > > > >
> >  dirTestWatcher.copyResourceToRoot(Paths.get("complex_1.parquet"));
> > > > > >   queryBuilder().sql("select * from
> dfs.`root`.`complex_1.parquet`
> > > > > > ").printCsv();
> > > > > > }
> > > > > >
> > > > > >
> > > > > > On Wed, Sep 26, 2018 at 12:37 PM Vitalii Diravka <
> > vita...@apache.org
> > > >
> > > > > > wrote:
> > > > > >
> > > > > > > Hi Jean-Claude
> > > > > > >
> > > > > > > BaseTestQuery is deprecated. Please use ClusterTest instead.
> > > > > > > See TestCsv.java for example.
> > > > > > >
> > > > > > > You can find more info about Drill Cluster-Fixture-Framework
> > here:
> > > > > > >
> > > https://github.com/paul-rogers/drill/wiki/Cluster-Fixture-Framework
> > > > > > >
> > > > > > > On Wed, Sep 26, 2018 at 12:00 AM Jean-Claude Cote <
> > > jcc...@gmail.com>
> > > > > > > wrote:
> > > > > > >
> > > > > > > > I have writing a msgpack storage plugin from drill.
> > > > > > > > https://github.com/jcmcote/drill/tree/master/contrib/
> > > > storage-msgpack
> > > > > > > >
> > > > > > > > I'm now trying to write test cases like
> > > > > > > >
> > > > > > > >     testBuilder()
> > > > > > > >         .sqlQuery("select * from cp.`msgpack/testBasic.mp`")
> > > > > > > >         .ordered()
> > > > > > > >         .baselineColumns("a").baselineValues("1").
> > > > baselineValues("1")
> > > > > > > >         .baselineColumns("b").baselineValues("2").
> > > > baselineValues("2")
> > > > > > > >         .build().run();
> > > > > > > >
> > > > > > > > However when I run the test case it says it cannot find the
> > > > > > > > msgpack/testBasic.mp file. However it is in my
> > src/test/resources
> > > > > > folder.
> > > > > > > >
> > > > > > > > Should this work? I'm I going at it the right way?
> > > > > > > > Thanks
> > > > > > > > jc
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>

Reply via email to