Commit Graph

372 Commits

Author SHA1 Message Date
Jan Mühlig 05575dcf86 Updated gitignore 2020-10-22 10:51:04 +02:00
Jan Mühlig 46a54548fe Added insert multiple rows 2020-10-22 10:45:03 +02:00
Jan Mühlig c2f5ba9857 Added create index 2020-10-22 09:49:28 +02:00
Jan Mühlig a906cc80bb Added CMakeLists 2020-10-22 09:02:23 +02:00
mrks 33c00133f2
Merge pull request #161 from hyrise/mrks/clang11
Make clang-11 ready
2020-10-19 18:15:58 +02:00
Markus Dreseler e5eb7a8893 Make clang-11 ready 2020-10-19 15:07:45 +02:00
mrks 1e9f6b50f0
Merge pull request #160 from j-tr/j-tr/docs
README: integrate missing blog post
2020-10-08 10:37:21 +02:00
Justin Trautmann 4ccd44dbb8 update readme 2020-10-08 10:14:14 +02:00
mrks 21e7eb5f18
Merge pull request #156 from ankushrayabhari/segfault
Fix segfault on printing cast/extract exprs
2020-09-09 22:28:45 +02:00
Ankush Rayabhari 4a460ca57a Fix tests to account for changed expr type for CAST/EXTRACT 2020-09-01 08:25:42 -07:00
Ankush Rayabhari b6dfe73051 Fix segfault on printing cast/extract exprs
- Additionally, fix printing logic
2020-09-01 08:25:15 -07:00
mrks 159c786cdb
Merge pull request #157 from ankushrayabhari/date_cast
Added support for casting to DATE
2020-09-01 12:14:20 +02:00
Ankush Rayabhari 8d1c86f192 Added support for casting to DATE 2020-08-31 20:42:08 -07:00
mrks 723b4175fd
Merge pull request #155 from hyrise/mrks/tokens
Remove tokens that are defined more than once
2020-06-18 12:53:59 +02:00
Markus Dreseler f7bc462e18 Update flex cpp/h 2020-06-18 12:47:02 +02:00
Markus Dreseler d91debc538 Remove tokens that are defined more than once 2020-06-18 12:46:25 +02:00
mrks 2efd12d78c
Merge pull request #153 from msiomkin/cast-as-type
Add support of CAST(expression AS datatype(length))
Add DATETIME
2020-06-18 12:45:46 +02:00
Mike Siomkin 7b22ee8ecb Add support of CAST(expression AS datatype(length))
CAST(expression AS datatype(length)) construction is a part of
ANSI SQL-92 standard. So we have to support it.
2020-06-16 22:39:00 +03:00
mrks 3e7d03276e
Merge pull request #151 from msiomkin/fix-readme-example-typo
Add missing braces to the README code snippet
2020-06-05 20:08:38 +02:00
Mike Siomkin 819dc09eb2 Add missing braces to the README code snippet 2020-06-05 20:30:40 +03:00
mrks de657e7057
Merge pull request #150 from TennyZhuang/patch-2
Refine example in README.md
2020-06-04 11:28:27 +02:00
mrks 530b48d539
Fix kStmtSelect typo 2020-06-04 11:22:56 +02:00
庄天翼 a18f03e0bc refine example in README.md
Signed-off-by: TennyZhuang <zty0826@gmail.com>
2020-06-03 23:40:02 +08:00
mrks 2dfaa2b672
Merge pull request #149 from msiomkin/fix-compiler-versions
Fix compiler version requirements in readme
2020-05-28 12:55:16 +02:00
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