Architecture #2787
closed
Use Doobie or Slick in place of SpringTemplate / squeryl / pur JDBC
Added by François ARMAND over 12 years ago.
Updated about 8 years ago.
Category:
Architecture - Code maintenance
Description
Since we use squeryl, we have a BUNCH of problem with it. On the other hand, using SpringTemplate is really not the scala-way, and we really would like to be as indenpendant as possible from Spring.
And Typesafe just provided SLICK ( http://slick.typesafe.com/ ), that seems to have a lot of things for it:
- its commercially supported by typesafe, and so we should not have to worry about it being discontinued;
- it allows statically check queries like squeryl
- but also simple fallback to plain SQL when needed
- Assignee deleted (
François ARMAND)
Some tests show that slick is not that user friendly, and version 3.0 is quite "reactive" opiniated. So I'm not sure at all that we want that.
On the other hand, we can't keep 4 DB drivers (slick, squeryl, spring, pure jdbc), that's unsane.
I propose to:
- by default, use doobie now (https://github.com/tpolecat/doobie \o/ a new one \o/. But it seems to be the nearest things to pure jdbc, with a nice scala layer, and astonishing performances, and support for postgres arrays)
- remove slick completelly. It's only used in test, that should be quick.
- then, remove squeryl
- then, sping
- profit !
- Subject changed from Use SLICK in place of SpringTemplate / squeryl to Use Doobie in place of SpringTemplate / squeryl
- Target version changed from Ideas (not version specific) to 4.0.0~rc2
- Status changed from New to In progress
- Assignee set to François ARMAND
- Subject changed from Use Doobie in place of SpringTemplate / squeryl to Use Doobie or Slick in place of SpringTemplate / squeryl
Testing Doobie leads to so-so results. And slick is nearer than squeryl in way of doing things, so perhaps the transition would be easier.
- Subject changed from Use Doobie or Slick in place of SpringTemplate / squeryl to Use Doobie or Slick in place of SpringTemplate / squeryl / pur JDBC
- Status changed from In progress to Pending technical review
- Assignee changed from François ARMAND to Vincent MEMBRÉ
- Pull Request set to https://github.com/Normation/rudder/pull/1184
- Status changed from Pending technical review to Pending release
- % Done changed from 0 to 100
- Target version changed from 4.0.0~rc2 to 318
- Target version changed from 318 to 4.0.0~rc2
- Target version changed from 4.0.0~rc2 to 4.0.0~rc1
- Status changed from Pending release to Released
This bug has been fixed in Rudder 4.0.0 which was released the 10th November 2016.
Also available in: Atom
PDF