Commit Graph

263 Commits

Author SHA1 Message Date
antao
be6f0966d5 Fix a compilation issue on windows 2020-06-09 10:09:17 +08:00
An Tao
b3d1f151b5
Fix the count() method of Mysql ORM (#468) 2020-06-09 00:54:12 +08:00
An Tao
adab48e187
Fix a Mysql connection error on Windows (#449) 2020-06-02 22:05:03 +08:00
Vedran Miletić
e286fe869a
Fix building of ORM on FreeBSD (#444) 2020-05-25 00:00:00 +08:00
antao
84e503a948 Bump version to 1.0.0-beta17 2020-05-23 10:47:24 +08:00
An Tao
4423d836f4
Add methods to get DbClient connection status (#436) 2020-05-18 08:31:18 +08:00
An Tao
26dca0a910
Fix a connection bug of mariadb clients (#438) 2020-05-17 21:08:12 +08:00
An Tao
cddd17eb55
Fix some compilation warnings (#432) 2020-05-16 10:11:50 +08:00
An Tao
4f8290b589
Remove non standard macros (#415) 2020-04-25 02:12:44 +08:00
interfector18
17b8c337f9
Standardize Row and Result api (#409)
* Standardize Row and Result api, throw specific exceptions

* Fix drogon_ctl for sqlite3 models

* Add mysql and sqlite3 tests, add exception throwing tests

* configure mysql in travis-ci

Co-authored-by: antao <antao2002@gmail.com>
2020-04-11 11:46:47 +08:00
An Tao
06bf158676
Fix issues in the MysqlConnection class (#394) 2020-03-20 23:12:05 +08:00
An Tao
bb8b5ded79
Fix a fatal bug in the MysqlConnection class (#379) 2020-03-11 12:41:20 +08:00
An Tao
77063e28d0
Optimize the rendering of HTTP responses (#371) 2020-03-07 20:49:05 +08:00
An Tao
810896c94c
Fix warnings on Windows (#368) 2020-03-01 11:50:47 +08:00
Wang Gao
d5cd882248
Add support for MSVC 2015 (#365)
Co-authored-by: An Tao <antao2002@gmail.com>
2020-02-26 12:36:46 +08:00
An Tao
58702dc41e
Port drogon to Windows (#335)
Co-authored-by: mcirsta <mforce2@gmail.com>
2020-01-25 11:58:20 +08:00
An Tao
f07d9e03e1
Use shorter stmt names in postgresql connections(#326) 2020-01-04 09:36:14 +08:00
An Tao
bc7ec6975a
Modify the SqlBinder class (#324) 2020-01-03 10:29:06 +08:00
An Tao
53e9dcca08
Optimize database connections (#323) 2020-01-02 17:09:10 +08:00
An Tao
fd6df92bbc
Fix an error in the batch mode of libpq. (#317) 2019-12-11 14:23:52 +08:00
An Tao
40ffb2d2af
Modify some code styles (#298) 2019-11-21 11:27:47 +08:00
antao
0133e47e8f Update drogon version to v1.0.0-beta10 2019-11-04 10:19:20 +08:00
Marwan Rabbâa
fc8abadaeb fix(compilation on alpine): Replace non standard u_short alias (#292) 2019-11-03 23:32:37 +08:00
An Tao
a71e37d86e
Modify some type names to meet the Google Style (#291) 2019-11-01 19:19:25 +08:00
An Tao
4868aa964d
Fix a busy loop bug when connections to mysql server are timeout (#286) 2019-10-21 19:10:59 +08:00
An Tao
d830c4f057
Fix some race conditions (#280)
* Fix a race condition of static files

* Fix a race condition of 404 pages
2019-10-17 09:23:14 +08:00
An Tao
e8a6bdc245
Fix some race conditions (#270) 2019-10-04 14:17:48 +08:00
Daniel Mensinger
656bd2462b Do not use smart pointers in thread storage (#269) 2019-10-03 19:22:37 +08:00
An Tao
d6e5c1959c
Modify some code of responses cache (#268) 2019-10-03 17:50:55 +08:00
An Tao
323bf0693a
Use the IOThreadStorage for responses caching and fast database clients storage (#267) 2019-10-03 10:17:54 +08:00
An Tao
f9d7f589a2
Add the getCurrentThreadIndex() method (#264) 2019-10-01 20:33:25 +08:00
An Tao
70eda27427
Add the ability to create restful API controllers (#244)
* Add the ability to create restful API controllers

* Update the model.json template file

* Modify the 'create controller' command of the drogon_ctl

* access column values by column array indexes instead of column names when constructing an instance of a model class

* Fix a bug of mysql database

* Add some static SQL into models

* Add validations to models

* Add setToNull method to models

* Support 'where in' substatement

* Delay rendering from json to the response body. This allows users to modify the json object before sending a response.

* Add synchronous method to the HttpClient class
2019-09-30 21:34:30 +08:00
An Tao
93573c99bf
Fix the fail in travis ci (#260) 2019-09-28 20:35:05 +08:00
An Tao
0b45135391
Modify database tests (#258) 2019-09-27 17:34:02 +08:00
An Tao
eed9c06250
Fix some compilation warnings (#257) 2019-09-27 16:05:38 +08:00
Daniel Mensinger
795079531a cmake: use export namespace for Drogon::Drogon (#255)
* cmake: use ${PROJECT_NAME} instead of drogon everywere

* cmake: use export namespace instead of dummy library
2019-09-26 19:33:58 +08:00
An Tao
b38a01bdea
Fix a sqlite3 bug when some SQL errors occur (#252) 2019-09-23 08:59:10 +08:00
An Tao
db18f565e1
Fix bug when using 'is null' substatement in ORM (#250) 2019-09-22 21:16:53 +08:00
An Tao
456d003482
Add prefixes to column name variables in model classes (#242) 2019-09-13 08:28:58 +08:00
An Tao
195bc5299e
Add comments for doxygen (#233) 2019-09-06 23:10:36 +08:00
An Tao
657dc840a9
Modify the processing of bool type column in ORM (#231) 2019-09-02 07:47:36 +08:00
An Tao
aa26e9a903
Modify the CMakeLists to modern cmake style (#229) 2019-08-31 08:27:57 +08:00
An Tao
ba49a0e0e6
Update README (#225)
* Update README

* Update CMakeLists.txt
2019-08-24 22:44:37 +08:00
An Tao
4e274b1a2e
Modify the orm command of drogon_ctl (#224) 2019-08-24 18:43:05 +08:00
An Tao
c3cb70f415
Optimize performance (#222) 2019-08-24 13:12:04 +08:00
An Tao
b5a142a10e
Fix bugs in default return values of functions (#220) 2019-08-22 22:23:50 +08:00
An Tao
f940b6f2cd
Modify some stuff (#216) 2019-08-17 20:05:32 +08:00
An Tao
bf88d08f78
Modify the test of postgresql database (#215) 2019-08-17 12:40:39 +08:00
An Tao
10db494556
Add database tests in the travis CI (#214) 2019-08-16 23:41:03 +08:00
An Tao
da285cd4d2
Reduce dependencies between declarations (#212) 2019-08-15 20:59:16 +08:00
antao
36a31dc576 Update trantor(Fix a bug with SSL) 2019-08-03 13:51:45 +08:00
An Tao
60ecbb945e
Optimizations (#206) 2019-08-03 01:59:54 +08:00
An Tao
d97cfa8609
Optimize the batch mode of libpq. (#205) 2019-08-02 14:30:37 +08:00
An Tao
e566d9c451
Support PostgreSQL batch mode (#203) 2019-08-01 13:01:54 +08:00
antao
40087fba9c Remove config.h
Modify the CMakeLists.txt

Remove the USE_ORM macro

Update trantor

Remove some std::dynamic_pointer_cast calls
2019-07-29 14:53:41 +08:00
An Tao
986ef8dda7
Optimize pipelining (#197)
* Optimize pipelining

* Optimize the DbClientLockFree class
2019-07-25 16:30:42 +08:00
An Tao
33577b9666
Format some files for good code style (#196) 2019-07-16 20:00:20 +08:00
An Tao
9af87bb1c0
Add some managers to reduce the size of the HttpAppFrameworkImpl code (#194) 2019-07-12 16:47:21 +08:00
antao
7d7537b562 Make all listeners share IO threads in the MacOS system 2019-07-09 17:23:06 +08:00
antao
bcac1d4899 Make the number of the connections of Fast DB Clients configurable 2019-07-08 18:21:18 +08:00
antao
7e6e0573e1 Optimize the Field class 2019-07-08 16:42:06 +08:00
antao
3452a2fa1c Modify some code to get a good style 2019-05-23 18:57:45 +08:00
antao
c17591ef49 Make some inline functions out-line 2019-05-23 10:47:15 +08:00
antao
11b6d20a69 clang-format 2019-05-18 20:39:57 +08:00
antao
e5fe92c67a Change the line length limit to 80 characters 2019-05-18 11:11:45 +08:00
antao
be08aba9d1 Add .clang-format 2019-05-17 22:49:09 +08:00
antao
e48692939c Modify some interfaces 2019-04-29 14:47:23 +08:00
antao
9703439b8d Optimize database operations 2019-04-10 23:27:44 +08:00
antao
6af398ff5a Add FastDbClient instances into the main event loop 2019-04-07 13:49:35 +08:00
antao
ade1e5d31a Update LICENSE 2019-04-05 18:46:19 +08:00
an-tao
5b55a8f9bf Fix an issue that occur on incorrect SQL 2019-03-27 15:32:23 +08:00
antao
353790f90b Use shared_ptr to store sql query in cache in the DbClientLockFree class 2019-03-23 17:32:03 +08:00
antao
6adff3469c Modify mysql client 2019-03-23 15:32:34 +08:00
antao
894b634b22 Adjust the execution order inside the run() method
Modify the configuration of fast database clients
Modify the ConfigLoader class
2019-03-23 11:26:21 +08:00
antao
db72840fc2 Move utility functions to the utils namespace 2019-03-21 17:47:45 +08:00
zhangjunjun
a580f89c8b Add query test in db_test.cc for orm_lib 2019-03-20 21:56:56 +08:00
antao
c7011b85f4 Modify the PgConnection class 2019-03-08 16:19:13 +08:00
antao
801cb8aa35 Modify some database classes 2019-03-07 11:56:20 +08:00
antao
b39dd52a87 Modify some comments 2019-03-06 15:57:05 +08:00
antao
56ae5f459f Do some optimization 2019-03-02 12:25:08 +08:00
antao
620d875646 Add an asynchronous interface for transaction creation 2019-02-26 15:15:23 +08:00
antao
1ca5e3cde6 Use multiple database connections in the DbClientLockFree class 2019-02-26 09:50:51 +08:00
An Tao
037b9e7eff
Merge pull request #60 from an-tao/dev
Use the PQSendQuery() function instead of the PQsendQueryParams() function when the number of parameters is 0.
2019-02-25 21:00:52 +08:00
antao
769d645682 Modify the PgConnection class 2019-02-25 17:36:47 +08:00
antao
429490bd78 Modify DbClientImpl 2019-02-24 09:55:26 +08:00
antao
4d46ebed9b Add some comments 2019-02-22 18:00:25 +08:00
antao
70e7089e7d Process the HEAD method request 2019-02-22 14:03:34 +08:00
antao
90e63c1a0f Modify the TransactionImpl class 2019-02-21 20:36:18 +08:00
antao
52f1888a14 Use persisted idle-callback in db connections 2019-02-21 20:00:22 +08:00
antao
15ab5e1558 Use nullptr to clear std::function objects 2019-02-21 15:46:54 +08:00
antao
44416f1456 Optimize db client classes 2019-02-21 13:21:07 +08:00
antao
6d97ea5992 Add r-reference version for the SqlBinder class 2019-02-20 14:18:57 +08:00
antao
84ab5d369e Modify the PgConnection class 2019-02-19 18:52:25 +08:00
antao
6c4ad73f7a Use prepared statement in postgresql connections 2019-02-19 15:06:16 +08:00
an-tao
5629efa910 Fix a bug in the DbClientLockFree class 2019-02-18 23:27:30 +08:00
antao
358e45598b Add lock-free db client class 2019-02-18 18:42:10 +08:00
antao
8e16228458 Reduce the critical region in the handleNewTask() method to improve performance 2019-02-18 14:59:35 +08:00
antao
2370a3f89f Fix a bug in the MysqlConnection class 2019-02-18 14:26:21 +08:00
an-tao
1600cb98fe Modify the number of event loops in the DbClientImpl class 2019-02-18 11:10:30 +08:00
antao
13417edf10 Improve the performance of dbClient 2019-02-17 20:32:16 +08:00