Mike Siomkin
00ac9cd304
Fix compiler version requirements in readme
...
c++17 is required to build the project. The minimum versions of gcc
and clang that support c++17 are 5 (for both compilers).
Closes #148
2020-05-26 15:29:43 +03:00
mrks
d05ef8ed0c
Assert nullable on columns->at(4). Assertion was being made twice at(3).
2020-05-25 22:15:49 +02:00
Mateo Gonzales Navarrete
4ca664cdd3
Assert nullable on columns->at(4). Assertion was being made twice at(3).
2020-05-25 15:04:39 -05:00
mrks
bba65d8f35
Use awk to check versions
2020-05-25 11:16:18 +02:00
Mike Siomkin
0f96b977e9
Use awk to check versions
...
Some Linux distributions (e.g. Centos) don't have bc installed by
default. And some (e.g Centos 8) don't have binary packages for it
available either. It's safer to use awk instead of bc to check
versions of bison and flex in the parser Makefile.
Closes #144
2020-05-24 13:43:01 +03:00
mrks
dd360837f1
Fixed typos
2020-05-19 16:09:29 +02:00
Mateo Gonzales Navarrete
28b3da0e84
Merge pull request #1 from mgonnav/fix-devdocs-typos
...
Fixed typos
2020-05-16 21:56:16 -05:00
Mateo Gonzales Navarrete
dfbce8112d
Fixed typos
2020-05-16 21:54:22 -05:00
mrks
a63232533f
std::experimental::filesystem --> std::filesystem ( #142 )
...
Yepp, thanks. Just curious: Did this cause issues anywhere?
2020-04-07 23:53:22 +02:00
mrks
3f2f37e772
Merge branch 'master' into patch-2
2020-04-07 23:46:18 +02:00
Christian Clauss
cd646f9971
Use print() function in both Python 2 and Python 3 ( #141 )
...
Thanks!
2020-04-07 23:46:03 +02:00
Christian Clauss
0e0f79feb9
std::experimental::filesystem --> std::filesystem
2020-04-01 00:15:37 +02:00
Tobias Nack
e8ce1c4caf
Add support to identify different set operators & allow chain of multiple set operators ( #138 )
2020-02-18 14:26:10 +01:00
Till Later
4b617bca96
Adds simple transaction commands ( #137 )
2020-01-14 13:21:19 +01:00
Daniel Lindner
e3cfc80975
Add COPY for import and export ( #139 )
2020-01-08 16:21:02 +01:00
mrks
907b668151
Fix build badge ( #135 )
...
The badge referred to the outdated release (which has been deleted for a while now). This PR updates it so that the master is used.
2019-12-16 04:52:17 -08:00
Bernhard M. Wiedemann
e88c1f4518
Sort the input file list ( #133 )
...
so that libsqlparser.so.1 builds in a reproducible way
in spite of indeterministic filesystem readdir order.
See https://reproducible-builds.org/ for why this is good.
2019-11-14 07:10:51 -08:00
mrks
a4703fec5b
Add DESCRIBE ( #131 )
2019-09-16 11:58:05 +02:00
f4lco
6e730a5436
Print matching token for operator types instead of plain integer ( #85 )
...
* Print matching token for operator types instead of plain integer
* Update sqlhelper.cpp
2019-08-13 16:07:19 +02:00
mrks
755ea052d7
Remove HISTORY keyword ( #129 )
2019-07-31 12:43:18 +02:00
d-justen
de4f81bb18
Support Create Table As Syntax ( #127 )
...
* support create table as select statement
* Generate bison code
* add test
2019-06-07 11:42:49 +02:00
Julian Menzler
6003ab58d1
Support WITH ( #125 )
...
* Add struct WithDescription in SelectStatement.h
* Add test for With statements
* Implement With draft
* tm
* Fix Grammar
* Fix commented code
* naming improvements
* naming improvements
* introduce memory leak1
* removed memory leak
* Create two WITH-tests
* Add bad queries reg. WITH
2019-05-24 16:42:28 +02:00
mrks
ab1e6b4192
Fix printing of EXISTS (SELECT) ( #114 )
...
* Fix printing of EXISTS (SELECT)
* Update sqlhelper.cpp
2019-04-23 11:35:17 +02:00
mrks
ddb6276fac
Fix print ( #112 )
2019-04-23 11:03:18 +02:00
Leander Neiss
e0e58d0876
Allow Expressions in LIMIT and OFFSET. ( #111 )
...
* Allow Expressions in LIMIT and OFFSET.
* Make NULL distinguishable from nullptr (not present) for LIMIT and OFFSET.
2019-04-04 12:25:15 +02:00
Moritz Eyssen
9701403ff5
Fix multi-threaded parsing ( #110 )
...
This should fix multi-threaded parsing. Not a clean solution, I am guessing the following block should be a single, state-less pattern? @mrks
```
\' { BEGIN singlequotedstring; strbuf = std::stringstream{}; }
<singlequotedstring>\'\' { strbuf << '\''; }
<singlequotedstring>[^']* { strbuf << yytext; }
<singlequotedstring>\' { BEGIN 0; yylval->sval = strdup(strbuf.str().c_str()); return SQL_STRING; }
<singlequotedstring><<EOF>> { fprintf(stderr, "[SQL-Lexer-Error] Unterminated string\n"); return 0; }
```
Anyway, the following hyrise playground does not crash anymore, so Toni should be able to work with this for the time being.
```c++
#include <iostream>
#include <thread>
#include "types.hpp"
#include "tpch/tpch_queries.hpp"
#include "SQLParser.h"
using namespace opossum; // NOLINT
int main() {
std::vector<std::thread> threads;
for (size_t t = 0; t < 200; ++t) {
threads.emplace_back([&]() {
for (size_t p = 0; p < 10'000; ++p) {
hsql::SQLParserResult result;
hsql::SQLParser::parse(tpch_queries.at(19), &result);
std::cout << "Parsing " << p << " is valid: " << result.isValid() << std::endl;
}
});
}
for (auto& thread : threads) {
thread.join();
}
return 0;
}
```
2019-03-22 07:07:17 -05:00
mrks
1b86e5e624
Make parameters for execute optional ( #107 )
2018-11-23 11:10:31 +01:00
mrks
bd56ba8f7a
Fix type inconsistency ( #106 )
2018-11-17 12:10:39 +01:00
mrks
b35fce9977
store all float values in doubles ( #105 )
2018-11-17 12:02:48 +01:00
mrks
62d162579a
Support escaped strings (e.g., 'Max O''Mustermann') ( #104 )
...
* Support escaped strings (e.g., 'Max O''Mustermann')
* review
2018-11-12 15:35:31 +01:00
alkim0
a59deb43c3
Added boolean literal support ( #103 )
...
* Added boolean support
* Made bool literals int vals
With a flag indicating if they came from boolean literals.
* Add makeLiteral(bool val);
2018-11-02 11:42:23 +01:00
mrks
a122effd46
Fix Tokens ( #102 )
...
* Fix Tokens
* fix
* ci
2018-10-22 22:05:29 +02:00
mrks
f7bd4ee592
Support more of the CREATE TABLE command ( #101 )
...
* Support more of the CREATE TABLE command
* bison version
* build on nemea
* bla
* Check for flex version
2018-10-19 14:18:03 +02:00
mrks
79bdad949f
Remove PART keyword ( #100 )
...
* Remove PART keyword
* Change it in some tests
2018-10-10 16:33:53 +02:00
mrks
c7980a0009
Fix include guard naming [-Wreserved-id-macro] ( #99 )
2018-09-29 10:38:29 +02:00
Jan Koßmann
717df4d910
Adjust license paragraph in readme ( #97 )
2018-05-31 17:51:27 +10:00
Tim Zimmermann
1f564e16b8
Add tests for SUBSTR support ( #96 )
...
* Add test for SUBSTR support
* Trigger CI
* Trigger
* Trigger
* Trigger
* Remove CMake file
2018-05-30 17:52:56 +10:00
Moritz Eyssen
73ed061d7d
Support EXTRACT ( #95 )
...
* EXTRACT support
* formatting
* formatting
* formatting
2018-05-23 03:02:14 +02:00
Moritz Eyssen
82e73f66d2
No FROM required ( #94 )
2018-05-22 15:35:39 +02:00
mrks
c7e8309363
Merge pull request #79 from f4lco/table-alias-with-columns
...
Extend table alias with column renames: "AS tbl(c0, c1)"
2018-02-12 11:42:02 +01:00
mrks
7837a2a6f5
Dummy-Commit to retrigger CI
2018-02-12 11:36:47 +01:00
Falco Duersch
2ff32fbee3
Extend table alias with column renames: "AS tbl(c0, c1)"
2018-02-12 11:28:36 +01:00
mrks
77185183f6
Merge pull request #87 from hyrise/mrks/fix-flex
...
Fix use of old flex version
2018-02-08 18:15:48 +01:00
Markus Dreseler
8bd3ad3a2c
Fix use of old flex version
2018-02-08 18:06:17 +01:00
mrks
2dea18f515
Merge pull request #83 from javrucebo/limit-offset
...
Allow more variations of LIMIT/OFFSET
2018-02-08 17:36:22 +01:00
Markus Dreseler
8ec540fc52
Merge branch 'master' of https://github.com/hyrise/sql-parser into limit-offset
2018-02-08 17:25:30 +01:00
mrks
fbc1839786
Merge pull request #82 from hyrise/remove_unused_enum_members
...
Remove unused enum members
2018-02-08 17:01:33 +01:00
Moritz Eyssen
c43af4b401
Update bison_parser.y
2018-02-08 16:46:30 +01:00
javrucebo
e33e6f61f7
committing bison/flex output to run testsuite on travis
2018-01-27 01:00:55 +01:00
javrucebo
cdd271490b
Allow more variations of LIMIT/OFFSET
...
In addtion to already supported LIMIT/OFFSET variants allow more to be parsed
Legacy:
- LIMIT int
- LIMIT int OFFSET int
Enhancement:
- OFFSET int (no limit)
- LIMIT ALL (no limit)
- LIMIT NULL (no limit)
- LIMIT ALL OFFSET int (no limit, but offset)
- LIMIT NULL OFFSET int (no limit, but offset)
Also ensures negative limits / offsets are set to kNoLimit/kNoOffset
2018-01-27 00:33:23 +01:00