Re: JDBC 4 Compliance

Поиск
Список
Период
Сортировка
От Kevin Wooten
Тема Re: JDBC 4 Compliance
Дата
Msg-id 1005C726-9CB7-4E6E-95B0-A899BEC42D4D@me.com
обсуждение исходный текст
Ответ на Re: JDBC 4 Compliance  (Dave Cramer <pg@fastcrypt.com>)
Ответы Re: JDBC 4 Compliance  (Bryan Varner <bvarner@polarislabs.com>)
Re: JDBC 4 Compliance  (Dave Cramer <pg@fastcrypt.com>)
Список pgsql-jdbc
I’ll give my point of view as a person who decided it wasn’t even worth it to fork the project but, instead, start a completely new one...

1) Pull Requests
I have the distinction of having created the oldest open pull request.  It’s a fairly minor change code wise that solves a large problem.  It could have performance problems but that’s what testing and beta releases are for.  When it sits in the open state (for 10 months now) it effectively doesn’t exist. It never gets any exposure and certainly never gets tested. Also, I left the request in a state where it passed all tests and was told to wait since other issues were holding up the merge. This did not go unnoticed when I began the planning for adding proper UDT support... if I can’t get a pull request covering one file merged why would I bother working on something that affects the entire core?

2) Maintenance Mode
You can tell the code is in maintenance mode just by reading it.  I won’t repeat my previous discussions about the state of the code now but there is quite obvious code rot going on as features are slapped together in the most fragile of ways. I believe that is what any project in “maintenance mode” gets; just another name for a project experiencing code rot.  It seemed obvious to me, both then and now, that working within the current framework was going to take a lot longer than just rolling a new one; that comes from somebody who now has a near complete implementation of java.sql.Driver. 

3) Resistance
When I introduced my project the longest discussion we had was about how it was packaged.  I am using maven and hadn’t gotten around to having it make a single jar with dependencies.   When I cleared up that indeed it would be a single jar, it then moved on to the idea that any third party library should be disallowed.  In my view there were some that were looking for any reason that could be found to write off my work and leave the driver as is.  The reason I wrote to the list, which I clearly stated then, was to introduce my project was to discuss how to include my work in the larger project and mainstream it in the long run; that discussion never happened.  No decision makers ever bothered to take a look at my code and report back. All we did was discuss minutia.  I came away with the distinct impression that I should just keep working on my project in isolation.


On Jun 24, 2013, at 12:02 PM, Dave Cramer <pg@fastcrypt.com> wrote:



Dave Cramer

dave.cramer(at)credativ(dot)ca
http://www.credativ.ca


On Mon, Jun 24, 2013 at 1:59 PM, Bryan Varner <bvarner@polarislabs.com> wrote:
I would like to start it. I do realize that my lack of time is probably
paramount. But it needs to be solved.

I'll speak from my own experiences (XA Interleaving) and from watching the mailing list over the last few months. Keep in mind, these are my impressions, which are meant in no way to condemn, vilify, or point the finger at any individual. Rather, I think it points to some cultural pressures on the project as a whole.

* There are currently six open pull requests [1], some of which date back 10 months. I can understand not merging a pull request. But things this old that aren't merged probably ought to be closed.

Fair enough although 2 of them are yours... 

* Initially when we contacted the list about implementing interleaving we got everything from (paraphrased) 'it's a good idea' to 'if you need it then you are doing it wrong'. Everything from our need for it to how we eventually implemented was ridiculed. 



* I finally took the time to jump through all the political hoops to clean up the pull request (I still don't understand how a visual diff on github is too hard to follow?!) I created a few months ago into two new pull requests. It's been 3 days, and there's be zero activity or comments on the requests. That seems odd. This is not a minor feature.

Well you posted it on a weekend, so I'd say 1 day really.  As I mentioned I do not have the technical ability to comment on it, I need to find someone who does. Let me work on that

* I got the distinct impression that this project consists of an 'old boys club' of developers who've worked on this project for a long time. Outsiders seem to be treated in an almost hostile manner.

Are you referring to the JDBC project or the postgresql project as a whole ? 

* A long-standing contributors misplaced emotional attachment to their code should not justify holding on to artifacts which go against logic, reason, and current best practices.

 

* It seems as though the project is resistant to any form of code-change beyond a trivial bug fix to existing code. This seems like a release management failure more than anything.

I would have to agree large changes are difficult to consume as we don't have the resources to review them, and the project is mainly in maintenance mode. 

I completely agree with the assertion that it's easier to fork this project than it is to contribute back to it. I will openly admit that I've considered forking this project personally.

I've only been around since late January / early February, so I hope my perspective in some way helps.

Regards,
-Bryan Varner


[1]: https://github.com/pgjdbc/pgjdbc/pulls




-- 
Sent via pgsql-jdbc mailing list (pgsql-jdbc@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-jdbc

В списке pgsql-jdbc по дате отправления:

Предыдущее
От: Bryan Varner
Дата:
Сообщение: Re: JDBC 4 Compliance
Следующее
От: Bryan Varner
Дата:
Сообщение: Re: JDBC 4 Compliance