Comments (3)
Hello @bennythomps,
Thanks for reporting this bug.
It is .map(_ => true)
that triggered it. A workaround (for now) is to rewrite your example like the following:
class ApiTokenRecord(implicit session: Session) {
def createStatement = withSchema { (token: UUID, apiKey: UUID, email: String, expiration: DateTime) =>
cql"""
INSERT INTO api.api_keys (api_token, api_key, email, expiration_time)
VALUES ($token, $apiKey, $email, $expiration)
""".prepared.executeAsync
}
def create(token: UUID, apiKey: UUID, email: String, expiration: DateTime) =
createStatement(token, apiKey, email, expiration).map(_ => true)
}
I'll mark this as bug for now. We are currently replacing the current macro implementation with a cleaner one using Scala meta. So hopefully this bug should vanish soon.
from troy.
Thanks @tabdulradi! What about the .map(_ => true)
is breaking it? It's not the permanent solution for me, so what to avoid when shifting will help avoid the problem until the meta stuff is available.
from troy.
In general avoid writing arbitrary code inside withSchema
block. We only tested for specific cases, like setConsistencyLevel
, the current Tree transformation code is not robust.
For the specific case of .map
with a lambda, even if the transformation got fixed, still won't work due to a bug in Macros.
You can have a peek on the new scala.meta based implementation here
from troy.
Related Issues (20)
- Support passing the execution context as param to the query
- Select count(*)
- Select column as HOT 1
- Select cast HOT 1
- Parse "CREATE TYPE" statement HOT 1
- Ensure String Interpolation / Bind Markers are used in correct places only
- Switch to FastParse HOT 2
- CQL comments HOT 1
- [WIP] CQL 3.3 status HOT 1
- Column names case insensitivity and quotes HOT 1
- Escaping Characters by Dollar-quoting HOT 1
- TOKEN in Where clause doesn't parse
- Standard aggregate functions
- SELECT * should be parsed to list of types not a set of types
- Creating User-Defined Aggregate Function (UDA)
- Scalac Warning HOT 2
- Implement BATCH
- Can't find schema file /schema/ HOT 2
- Research how we can use Cassandra's source code to typecheck queries
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from troy.