Re: Dropping support for Guava versions earlier than 14

2016-09-06 Thread Julian Hyde
Have you talked to your upstreams about planned obsolescence? And about supporting a range of versions, so that everyone isn’t locked down forever. Julian > On Sep 6, 2016, at 8:37 PM, Andrew Purtell wrote: > > We are stuck because our upstreams are stuck. > > Not moving up that minimum woul

Re: Dropping support for Guava versions earlier than 14

2016-09-06 Thread Andrew Purtell
We are stuck because our upstreams are stuck. Not moving up that minimum would not worsen the situation. > On Sep 6, 2016, at 8:34 PM, Julian Hyde wrote: > > As I said, Calcite doesn’t require a particular version of Guava. We support > any version newer than 11. > > But we would really, re

Re: Dropping support for Guava versions earlier than 14

2016-09-06 Thread Julian Hyde
As I said, Calcite doesn’t require a particular version of Guava. We support any version newer than 11. But we would really, really appreciate it if you (and other downstream projects) moved off the obsoleted old versions. Julian > On Sep 6, 2016, at 8:29 PM, Andrew Purtell wrote: > > Downst

Why varchar columns in where FILTER are transformed to 'CAST($1):....'?

2016-09-06 Thread bluejoe
Hi, all I wrote a custom ScannableTable and override the scan(context, filters) method to implement the searching function. When I sent a SQL command like select * from PERSONS where NAME=‘bluejoe’ and AGE>30 In the filters parameter, I found the filter on column `AGE` is parsed properly like `

Re: Dropping support for Guava versions earlier than 14

2016-09-06 Thread Andrew Purtell
Downstreamers might be stuck. Bringing together a number of components written against different versions of Guava, you will find both forward and backward incompatibilities are possible if stepping outside of a narrow range, and even at the same time. If Calcite is required by something and i

[jira] [Created] (CALCITE-1371) PreparedStatement does not process Date type correctly

2016-09-06 Thread Billy(Yiming) Liu (JIRA)
Billy(Yiming) Liu created CALCITE-1371: -- Summary: PreparedStatement does not process Date type correctly Key: CALCITE-1371 URL: https://issues.apache.org/jira/browse/CALCITE-1371 Project: Calcite

Re: solr-sql: adapter for solr cloud

2016-09-06 Thread bluejoe
That's great! Thank you very much! Best regards, Zhihong SHEN ——— Zhihong SHEN, Ph. D., Senior Engineer Big Data Application Service Technology Laboratory, Computer Network Information Center, Chinese Academy of Sciences office phone:+86-10-58812516 mobile:+86-13671116520 在 16/

Re: solr-sql: adapter for solr cloud

2016-09-06 Thread Julian Hyde
This mailing list is the perfect place to discuss this. (For future reference, for issues we use Apache JIRA[1], not github issues.) We’d be happy to add a mention of your adapter to the site. It could go into the Adapters page[2]. Edit the source of that page[3] and create a pull request. An

Re: Dropping support for Guava versions earlier than 14

2016-09-06 Thread Julian Hyde
Alternative proposal: We keep Guava in the public API. Down-streamers can use whatever version of Guava they choose. This is what we do today. It’s working fine (except that the down streamers seem to want to stay on old versions forever). Julian > On Sep 6, 2016, at 6:43 PM, Josh Elser wrote

solr-sql: adapter for solr cloud

2016-09-06 Thread bluejoe
Hi, all I am a Calcite user from China. Calcite is very powerful and the abstraction work is very prefect. Now I am working on solr-sql project, which implements a Calcite adapter to provide sql interfaces for solr(see https://github.com/bluejoe2008/solr-sql). Can Calcite add links to my proje

Re: Problem when passing Date parameter in PreparedStatement

2016-09-06 Thread Josh Elser
Hi Yiming, Not using the Calendar argument in AvaticaSite#setDate(Date, Calendar) looks like a bug (have not looked at the implementation, though). Want to file a JIRA issue to investigate this further, please? If you have the ability to provide a unit test to outline this breakage, it would

Re: Dropping support for Guava versions earlier than 14

2016-09-06 Thread Josh Elser
(from the peanut gallery) I have no strong opinions but find myself presently leaning towards Ted's suggestions. Ideally, I think that we should not expose things in a "public API" which we do not have the ability to guarantee compatibility of. A round-about way of saying "Calcite public API

Re: New committers

2016-09-06 Thread Michael Mior
Welcome MinJi and Francis! Great to have more people on the team. As an aside, I've been a little silent lately but I'm going to be getting back to my work involving Calcite over the next few weeks. You'll likely be hearing more from me :) -- Michael Mior michael.m...@gmail.com 2016-09-06 16:59 G

Re: Dropping support for Guava versions earlier than 14

2016-09-06 Thread Julian Hyde
Yes, I misread your suggestion. I see now you are suggesting a compromise. The worst that can happen is that the API users make a few unnecessary defensive copies, or due to missing documentation they have to spend a little longer researching the API in order to discover that it is “safe”. I am

Re: Dropping support for Guava versions earlier than 14

2016-09-06 Thread Sergey Soldatov
The main reason why we don't shade protobuf is MR jobs for bulk load. We are using hbase-protocol in the classpath and clash between shaded and unshaded protobufs happen. Actually I'm not sure whether we still need this (I mean hbase-protocol in the classpath). Actually shading doesn't work well fo

Re: New committers

2016-09-06 Thread F21
Thanks, Julian. :) Francis On 7/09/2016 6:59 AM, Julian Hyde wrote: MinJi and Francis, You should both now have commit rights. Calcite is a small project, so the process is not rigid. The basic procedure is “use your discretion”. We trust you. Obviously, you should always run the test suite

Re: New committers

2016-09-06 Thread MinJi Kim
Thanks! Will do! -Minji On 9/6/16 1:59 PM, Julian Hyde wrote: MinJi and Francis, You should both now have commit rights. Calcite is a small project, so the process is not rigid. The basic procedure is “use your discretion”. We trust you. Obviously, you should always run the test suite bef

Re: Dropping support for Guava versions earlier than 14

2016-09-06 Thread Ted Dunning
It isn't in the same category because nothing forces immutability. If Calcite were to return an ImmutableList declared as a List, then it would still be immutable (i.e. would throw if mutation is attempted). The byte[] can't do this. On Wed, Sep 7, 2016 at 7:25 AM, James Taylor wrote: > What a

Re: Dropping support for Guava versions earlier than 14

2016-09-06 Thread Ted Dunning
Julian, I think you miss the point of my suggestion. String is not called ImmutableString. The contract of no immutability is carried by outside tribal knowledge and documentation. It is enforced by not allowing mutation. If you declare a List, but assign an ImmutableList, you are in a similar s

Re: Dropping support for Guava versions earlier than 14

2016-09-06 Thread Julian Hyde
I’m not sure about “lots of APIs”. Sure, HBase. HBase uses byte[] because they have to for performance — hey, I expect they’d use C’s void* and void** if they could. Calcite needs a higher level language than HBase. HBase’s competitors are written in C and Go. Calcite’s competitors are written

Re: Dropping support for Guava versions earlier than 14

2016-09-06 Thread James Taylor
What about APIs with byte[] parameters? Lot's of APIs have this, but almost all of the time the byte[] is immutable. That's kind of in the same category as what-if String were mutable, no? On Tue, Sep 6, 2016 at 2:11 PM, Julian Hyde wrote: > How bad would it be for API designers and users if jav

Re: Dropping support for Guava versions earlier than 14

2016-09-06 Thread Julian Hyde
How bad would it be for API designers and users if java.lang.String were mutable? I would say really, really bad. You could add a lot of comments to the API documentation, but you’d never really be sure that everyone was adhering to the contract. > On Sep 6, 2016, at 1:59 PM, Ted Dunning wrote

Re: Dropping support for Guava versions earlier than 14

2016-09-06 Thread Ted Dunning
What is so bad about declaring that variable as a List and making it an ImmutableList underneath? Guard it in the programmer's mind by comments and naming. And if they don't believe you, it still can't be changed. This avoids Guava leakage in the API and still gives you (nearly) all of the benefi

New committers

2016-09-06 Thread Julian Hyde
MinJi and Francis, You should both now have commit rights. Calcite is a small project, so the process is not rigid. The basic procedure is “use your discretion”. We trust you. Obviously, you should always run the test suite before committing. If your change is minor, you can commit without rev

Re: Dropping support for Guava versions earlier than 14

2016-09-06 Thread James Taylor
We were bit by guava comparator chain wrt to booleans. On Tuesday, September 6, 2016, Andrew Purtell wrote: > I've been bitten three times: once by CacheBuilder, once by Stopwatch, > once by Service. > > > On Sep 6, 2016, at 12:10 PM, Julian Hyde > wrote: > > > > What is so bad about Guava? I h

Re: Dropping support for Guava versions earlier than 14

2016-09-06 Thread Andrew Purtell
I've been bitten three times: once by CacheBuilder, once by Stopwatch, once by Service. > On Sep 6, 2016, at 12:10 PM, Julian Hyde wrote: > > What is so bad about Guava? I have always found it to be a high quality > library. I hear that they have broken backwards compatibility on one or two

Re: Dropping support for Guava versions earlier than 14

2016-09-06 Thread Julian Hyde
What is so bad about Guava? I have always found it to be a high quality library. I hear that they have broken backwards compatibility on one or two occasions, but I’ve never been affected by that personally. > On Sep 6, 2016, at 12:04 PM, Andrew Purtell wrote: > > No argument that naming shoul

Re: Dropping support for Guava versions earlier than 14

2016-09-06 Thread Andrew Purtell
No argument that naming should set expectations of immutability if that's what should be conveyed, but Guava types (or Guava anything) is a means to an end that can inflict significant pain on downstreamers. On Tue, Sep 6, 2016 at 11:59 AM, Julian Hyde wrote: > Calcite’s API has a large surface

Re: Dropping support for Guava versions earlier than 14

2016-09-06 Thread Julian Hyde
Calcite’s API has a large surface area. The API consists not just of method calls, but also data objects. For example, the Project class [1] represents a project node in a relational algebra expression. Its main field is “public final ImmutableList exps”. It is very important that everyone, esp

Re: Simple Streaming Senario

2016-09-06 Thread Γιώργος Θεοδωράκης
I've tried with avatica, avatica-metrics, standalone-server and server, all in version 1.8.0 jars from maven repository as dependencies(at first only with avatica and avatica-metrics and then with other combinations) and 1.9.0-SNAPSHOT versions of calcite core and csv with their sources. At first I

Re: [ANNOUNCE] New committer: MinJi Kim

2016-09-06 Thread Josh Elser
Congrats and welcome, MinJi! MinJi Kim wrote: Thank you for the kind introduction, Julian! Also, thank you everybody for inviting me to the team! I am looking forward to working with you all and learning more about Calcite! Just a quick introduction: I am an engineer at Dremio, working on a lot

Problem when passing Date parameter in PreparedStatement

2016-09-06 Thread Yiming Liu
Hi Calcite devs, I have problem when passing date parameter in PreparedStatement. Following is the sample code: TimeZone tzUtc = TimeZone.getTimeZone("UTC"); Calendar cUtc = Calendar.getInstance(tzUtc); cUtc.set(2013, 10, 5, 0, 0, 0); java.sql.Date passSqlDate = new java.sql.Date(cUtc.getTimeInMi

Re: [ANNOUNCE] New committer: MinJi Kim

2016-09-06 Thread Jason Altekruse
Congrats Minji! Jason Altekruse Software Engineer at Dremio Apache Drill Committer On Tue, Sep 6, 2016 at 8:45 AM, Julien Le Dem wrote: > Congrats Minji! > > On Sun, Sep 4, 2016 at 11:42 PM, MinJi Kim wrote: > > > Thank you for the kind introduction, Julian! Also, thank you everybody > > for

Re: Simple Streaming Senario

2016-09-06 Thread Julian Hyde
That still sounds like a version mismatch. Note that avatica releases are separate from calcite these days. Therefore calcite-core-1.9.0-SNAPSHOT, for instance, depends upon avatica-metrics-1.8.0. I think you should use 1.9.0-SNAPSHOT versions of calcite- jars, and 1.8.0 versions of avatica- ja

Re: [ANNOUNCE] New committer: MinJi Kim

2016-09-06 Thread Julien Le Dem
Congrats Minji! On Sun, Sep 4, 2016 at 11:42 PM, MinJi Kim wrote: > Thank you for the kind introduction, Julian! Also, thank you everybody > for inviting me to the team! I am looking forward to working with you all > and learning more about Calcite! > > Just a quick introduction: I am an engi

Re: Simple Streaming Senario

2016-09-06 Thread Γιώργος Θεοδωράκης
I have imported as external jars calcite-example-csv, calcite-core, avatica , linq4j, avatica-metrics, avatica-standalone with all their sources and tests, and I get: Exception in thread "main" java.lang.AbstractMethodError: org.apache.calcite.config.CalciteConnectionProperty.valueCla‌​ss()Ljava/la

[jira] [Created] (CALCITE-1370) Add OTHER_DDL enum value in SqlKind to DDL enum set to execute ddl queries implemented as OTHER_DDL type

2016-09-06 Thread Rajeshbabu Chintaguntla (JIRA)
Rajeshbabu Chintaguntla created CALCITE-1370: Summary: Add OTHER_DDL enum value in SqlKind to DDL enum set to execute ddl queries implemented as OTHER_DDL type Key: CALCITE-1370 URL: https://issues.apa