67 Commits

Author SHA1 Message Date
bf5429634a Minimize Jar [pom.xl]
Added minimize jar to configuration. Greatly reduces exported jar file size.
2022-08-18 09:45:40 +00:00
abd2d6fe03 Update 'pom.xml' 2022-08-18 09:44:50 +00:00
2cc46fdae5 Unnecessary Import [EffExecuteStatement.java]
Removed unnecessary import.
2022-08-18 09:43:54 +00:00
4fee9f2898 Update 'pom.xml' 2022-08-18 09:41:44 +00:00
bbbfb83518 Small Changes [pom.xml]
Added minimize jar to configuration. Makes exported jar file size substantially smaller.
2022-08-18 09:41:10 +00:00
f51db586ef Document supported Minecraft server versions 2022-08-12 08:38:18 +00:00
3466a04ec8 Fix null pointer exception 2022-03-21 17:28:59 +02:00
d0191007a5 Fix mistake in readme 2022-03-20 11:30:51 +01:00
b1df041ccb Update 'README.md' 2022-03-20 11:29:17 +01:00
b9e14652ea Update 'README.md' 2022-03-20 11:28:55 +01:00
0098450441 Update 'README.md' 2022-03-20 11:28:25 +01:00
9c41039217 Update 'README.md' 2022-03-20 11:27:35 +01:00
46a72639af Add config to readme 2022-03-20 11:26:33 +01:00
cbd1565896 Add installation to readme 2022-03-20 11:21:59 +01:00
0332ad9334 If we're moving to Java 9, let's move to Java 11 as it is LTS 2022-03-20 12:08:41 +02:00
32f40af484 Fix blob column types & Use Java 9 2022-03-20 11:57:25 +02:00
2a24a974ef Update dependency, performance improvement 2022-01-28 15:06:16 +02:00
d80df616c3 Update dependencies 2022-01-23 11:39:02 +02:00
0b3b183a14 Fix compilation 2021-10-21 11:00:14 +03:00
70fa7b7105 1.3.3 2021-10-21 11:00:12 +03:00
c85d579645 fix expressions in queries, thanks to TPGamesNL 2021-10-21 11:00:12 +03:00
1e039c1bfe fix skript 2.6 support 2021-10-21 11:00:11 +03:00
2a4d7f6a6d add null check on locals 2021-10-21 11:00:11 +03:00
2dcd4edf58 reformat code (thanks TPGamesNL) 2021-10-21 11:00:11 +03:00
9b694206d3 Update README.md 2021-10-21 11:00:10 +03:00
d8cb6fedb5 finish experimental (disabled) on complete of sql query event 2021-10-21 11:00:10 +03:00
2eda1418cf Add Java 8 support 2021-10-21 11:00:09 +03:00
83d2795519 set api version to 1.13
I think this will help with performance in 1.13+ version, but will keep working in 1.9+
2021-10-21 11:00:09 +03:00
66459c6190 Merge pull request #10 from ham1255/master
Fixed Govindas weirdness on project files (maven fix)
2021-10-21 11:00:08 +03:00
b1ef437b96 partially fixed pom.xml 2021-10-21 11:00:08 +03:00
mohammed jasem alaajel
35cfb0b4bb Fixed Govindas weirdness on project files 2021-10-21 11:00:08 +03:00
4da64624d8 Fix pom.xml & update HikariCP 2021-10-21 11:00:07 +03:00
0c16b98553 make sql auto sync if not main thread 2021-10-21 11:00:07 +03:00
9e7c5fcbee Preparations for quicker queries (no 50ms delay) feature 2021-10-21 11:00:07 +03:00
8b3d26cf78 Update README.md 2021-10-21 11:00:07 +03:00
5a22864650 remove thread pool config option & Use CachedThreadPool to make sure all threads are used properly
CachedThreadPool automatically creates threads on demand and automatically deletes unused threads after 60 seconds of no usage, so we can remove config option
2021-10-21 11:00:06 +03:00
05554a0043 1.2.1 2021-10-21 11:00:06 +03:00
f6a43f0b53 Make config more informative 2021-10-21 11:00:06 +03:00
5803be55b7 Support missing config options 2021-10-21 11:00:06 +03:00
d57b921b4f Shade MariaDB driver & add configurable driver class to config 2021-10-21 11:00:06 +03:00
4fd654c743 bump HikariCP version 2021-10-21 11:00:06 +03:00
233d21a30b Fix memory leak introduced by last commit 2021-10-21 11:00:06 +03:00
8e760c4d8b Merge branch 'master' of https://github.com/Govindass/skript-db 2021-10-21 11:00:06 +03:00
fe2231ae23 Update README.md 2021-10-21 11:00:06 +03:00
a132912f6b Switch from gradle to maven (preference) and optimize code 2021-10-21 11:00:05 +03:00
d4f9a394fd Add synchronous syntax to readme 2021-10-21 11:00:05 +03:00
a63a4c6d6f Fix local variables in sql queries within the same tick & first startup errors 2021-10-21 11:00:05 +03:00
11063c166d Bump HikariCP 3.4.3 -> 3.4.5 2021-10-21 11:00:05 +03:00
b5f2d56263 Remove debug message 2021-10-21 11:00:05 +03:00
8b5121d5fb Make thread pool configurable 2021-10-21 11:00:05 +03:00
b435696385 Add synchronous support on current thread 2021-10-21 11:00:05 +03:00
4d795edf01 Merge FranKusmiruk's Pull Request 2021-10-21 11:00:05 +03:00
2570408906 add gradle fatJar task 2021-10-21 11:00:05 +03:00
8d94a85779 Update HikariCP, should fix a lot of issues 2021-10-21 11:00:05 +03:00
6d0ec81e2e Remove unused class 2021-10-21 11:00:05 +03:00
c4379d45b7 add synchronous 2021-10-21 11:00:04 +03:00
434ea07410 Delete EffSyncExecuteStatement.java 2021-10-21 11:00:04 +03:00
8ca308802f Delete EffExecuteStatement.java 2021-10-21 11:00:04 +03:00
2ce1dd924e Delete plugin.yml 2021-10-21 11:00:02 +03:00
b20740b020 Add files via upload 2021-10-21 10:59:57 +03:00
Bryan Terce
7906dd8eb1 0.2.1 Hotfix 2019-06-26 01:56:29 -07:00
Bryan Terce
33f4d5ff54 Fix sync execute logic (fixes #16) 2019-06-26 01:55:08 -07:00
Bryan Terce
9a20da02a0 0.2.0 Update 2019-06-22 12:12:27 -07:00
Bryan Terce
f13bf78007 Manually fix README 2019-06-22 12:11:29 -07:00
Bryan Terce
55081e5d28 Update README 2019-06-22 12:09:59 -07:00
Bryan Terce
d88e431f07 Add synchronous execution flag 2019-06-22 12:09:17 -07:00
Bryan Terce
e6606a012a Fix lifespan syntax 2019-06-22 12:05:22 -07:00
5 changed files with 44 additions and 12 deletions

View File

@@ -5,11 +5,18 @@
### Difference from original skript-db
- Fixed local variables disappearance in newer Skript versions (very hacky fix, but it works, so that's good!)
- Thread-pool size is now automatically increasing on demand to use of CachedThreadPool, instead of a fixed hard-coded number
- Uses a newer version of HikariCP
- Only meant to be used by newer Minecraft versions (1.8 is not supported)
- Thread-pool size is now automatically increasing on demand with use of CachedThreadPool, instead of a fixed hard-coded number
- Uses newer versions of dependencies (Increased performance and security)
- Replaced `synchronously execute` with `quickly execute`, which allows to speed up queries by 50ms with some risk
- SQL Driver is configurable
- A few variable type related bugs fixed
- Uses Java 11 instead of Java 8
### Installation
1. Use 1.8+ Minecraft server version.
2. Use Skript 2.5+ (1.8 Skript fork is needed if you're using 1.8)
3. Use Java 11+ (If you use 1.8, a spigot fork is needed to support Java 11+)
4. Put skript-db in plugins folder and restart the server
### Expression `Data Source` => `datasource`
Stores the connection information for a data source. This should be saved to a variable in a
`script load` event or manually through an effect command.
@@ -78,3 +85,10 @@ execute unsafe {fully dynamic query} in {sql}
```
---
### Configuration
plugins/skript-db/config.yml
```
# Only change this if you wish to use a different driver than Java's default, like MariaDB driver.
# If you use MariaDB, its driver is shaded together with skript-db, so you can just specify: "org.mariadb.jdbc.Driver"
sql-driver-class-name: "default"
```

13
pom.xml
View File

@@ -6,7 +6,7 @@
<groupId>com.btk5h</groupId>
<artifactId>skript-db</artifactId>
<version>1.3.3</version>
<version>1.3.5</version>
<packaging>jar</packaging>
<repositories>
@@ -45,8 +45,8 @@
<artifactId>maven-compiler-plugin</artifactId>
<version>3.6.1</version>
<configuration>
<source>8</source>
<target>8</target>
<source>11</source>
<target>11</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
@@ -56,6 +56,7 @@
<version>3.2.3</version>
<configuration>
<createDependencyReducedPom>false</createDependencyReducedPom>
<minimizeJar>true</minimizeJar>
</configuration>
<executions>
<execution>
@@ -81,7 +82,7 @@
<dependency>
<groupId>com.zaxxer</groupId>
<artifactId>HikariCP</artifactId>
<version>4.0.3</version>
<version>5.0.1</version>
<scope>compile</scope>
</dependency>
<dependency>
@@ -93,14 +94,14 @@
<dependency>
<groupId>com.github.SkriptLang</groupId>
<artifactId>Skript</artifactId>
<version>2.6-alpha1</version>
<version>2.6-beta3</version>
<scope>provided</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/org.mariadb.jdbc/mariadb-java-client -->
<dependency>
<groupId>org.mariadb.jdbc</groupId>
<artifactId>mariadb-java-client</artifactId>
<version>2.7.2</version>
<version>3.0.3</version>
<scope>compile</scope>
</dependency>

View File

@@ -14,6 +14,9 @@ import org.bukkit.event.Event;
import javax.sql.DataSource;
import javax.sql.rowset.CachedRowSet;
import javax.sql.rowset.serial.SerialBlob;
import javax.sql.rowset.serial.SerialException;
import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSetMetaData;
@@ -299,6 +302,21 @@ public class EffExecuteStatement extends Effect {
}
private void setVariable(Event e, String name, Object obj) {
//fix mediumblob and similar column types, so they return a String correctly
if (obj != null) {
if (obj.getClass().getName().equals("[B")) {
obj = new String((byte[]) obj);
//in some servers instead of being byte array, it appears as SerialBlob (depends on mc version, 1.12.2 is bvte array, 1.16.5 SerialBlob)
} else if (obj instanceof SerialBlob) {
try {
obj = new String(((SerialBlob) obj).getBinaryStream().readAllBytes());
} catch (IOException | SerialException ex) {
ex.printStackTrace();
}
}
}
Variables.setVariable(name.toLowerCase(Locale.ENGLISH), obj, e, isLocal);
}

View File

@@ -6,7 +6,6 @@ import ch.njol.skript.lang.SkriptEvent;
import ch.njol.skript.lang.SkriptParser;
import com.btk5h.skriptdb.events.SQLQueryCompleteEvent;
import org.bukkit.event.Event;
import org.eclipse.jdt.annotation.Nullable;
public class EvtSQLQueryComplete extends SkriptEvent {
static {
@@ -24,7 +23,7 @@ public class EvtSQLQueryComplete extends SkriptEvent {
}
@Override
public String toString(@Nullable Event event, boolean debug) {
public String toString(Event event, boolean debug) {
return "complete of sql query";
}
}

View File

@@ -1,5 +1,5 @@
name: skript-db
version: 1.3.3
version: 1.3.5
main: com.btk5h.skriptdb.SkriptDB
depend: [Skript]
authors: [btk5h, FranKusmiruk, Govindas, TPGamesNL]