Skip to content

Commit a93a005

Browse files
authored
Merge pull request #760 from ydb-platform/slo-xorm
test(slo): add xorm workload
2 parents 082940a + 1d472e2 commit a93a005

File tree

11 files changed

+1533
-34
lines changed

11 files changed

+1533
-34
lines changed

.github/workflows/slo.yml

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ jobs:
2525
uses: actions/checkout@v3
2626

2727
- name: Run SLO
28-
uses: ydb-platform/slo-tests@js-version
28+
uses: ydb-platform/slo-tests@additional-logs
2929
with:
3030
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
3131
KUBECONFIG_B64: ${{ secrets.SLO_KUBE_CONFIG }}
@@ -45,7 +45,7 @@ jobs:
4545

4646
language_id0: 'native'
4747
workload_path0: 'tests/slo'
48-
language0: 'Go SDK Native'
48+
language0: 'Go SDK native'
4949
workload_build_context0: ../..
5050
workload_build_options0: -f Dockerfile --build-arg SRC_PATH=native --build-arg JOB_NAME=workload-native
5151

@@ -60,3 +60,15 @@ jobs:
6060
language2: 'Go SDK gorm'
6161
workload_build_context2: ../..
6262
workload_build_options2: -f Dockerfile --build-arg SRC_PATH=gorm --build-arg JOB_NAME=workload-gorm
63+
64+
language_id3: 'xorm'
65+
workload_path3: 'tests/slo'
66+
language3: 'Go SDK xorm'
67+
workload_build_context3: ../..
68+
workload_build_options3: -f Dockerfile --build-arg SRC_PATH=xorm --build-arg JOB_NAME=workload-xorm
69+
70+
- uses: actions/upload-artifact@v3
71+
if: always()
72+
with:
73+
name: slo-logs
74+
path: logs/

examples/go.mod

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ require (
1212
github.com/ydb-platform/ydb-go-sdk-auth-environ v0.1.2
1313
github.com/ydb-platform/ydb-go-sdk-prometheus v0.11.10
1414
github.com/ydb-platform/ydb-go-sdk-zerolog v0.12.2
15-
github.com/ydb-platform/ydb-go-sdk/v3 v3.47.2
15+
github.com/ydb-platform/ydb-go-sdk/v3 v3.47.3
1616
github.com/ydb-platform/ydb-go-yc v0.10.1
1717
google.golang.org/genproto v0.0.0-20230131230820-1c016267d619
1818
gorm.io/driver/postgres v1.5.0
@@ -77,4 +77,4 @@ require (
7777

7878
replace github.com/ydb-platform/ydb-go-sdk/v3 => ../
7979

80-
replace xorm.io/xorm => github.com/ydb-platform/xorm v0.0.0
80+
replace xorm.io/xorm => github.com/ydb-platform/xorm v0.0.3

examples/go.sum

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -909,8 +909,8 @@ github.com/yandex-cloud/go-genproto v0.0.0-20220815090733-4c139c0154e2 h1:blq4r0
909909
github.com/yandex-cloud/go-genproto v0.0.0-20220815090733-4c139c0154e2/go.mod h1:HEUYX/p8966tMUHHT+TsS0hF/Ca/NYwqprC5WXSDMfE=
910910
github.com/ydb-platform/gorm-driver v0.0.5 h1:q6Cg/iSFw4TAmSyMh25YM0GRmr6LVM2gnFD+9aCTGlo=
911911
github.com/ydb-platform/gorm-driver v0.0.5/go.mod h1:fkCvWZlA3PzL5MiMc7yFOzxUOzLpY1uT8yZo+e4SV4Y=
912-
github.com/ydb-platform/xorm v0.0.0 h1:c3lrIbgY3fn0r78/8pYCHJPPy6MRyk7E/+yUzQc7oOM=
913-
github.com/ydb-platform/xorm v0.0.0/go.mod h1:sFIWG6feARGUhAiZboe3pbjBVgyQxEcGw5d+aBeVdwQ=
912+
github.com/ydb-platform/xorm v0.0.3 h1:MXk42lANB6r/MMLg/XdJfyXJycGUDlCeLiMlLGDKVPw=
913+
github.com/ydb-platform/xorm v0.0.3/go.mod h1:hFsU7EUF0o3S+l5c0eyP2yPVjJ0d4gsFdqCsyazzwBc=
914914
github.com/ydb-platform/ydb-go-genproto v0.0.0-20230528143953-42c825ace222 h1:8ddsk8HKBkVPH8w3k81si6SeCVJIAtw8dnw+s3h0ciE=
915915
github.com/ydb-platform/ydb-go-genproto v0.0.0-20230528143953-42c825ace222/go.mod h1:Er+FePu1dNUieD+XTMDduGpQuCPssK5Q4BjF+IIXJ3I=
916916
github.com/ydb-platform/ydb-go-sdk-auth-environ v0.1.2 h1:EYSI1kulnHb0H0zt3yOw4cRj4ABMSMGwNe43D+fX7e4=

tests/slo/database/sql/storage.go

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,7 @@ func (s *Storage) Write(ctx context.Context, e generator.Row) (attempts int, err
169169
ctx, cancel := context.WithTimeout(ctx, time.Duration(s.cfg.WriteTimeout)*time.Millisecond)
170170
defer cancel()
171171

172-
return attempts, retry.Do(ydb.WithTxControl(ctx, writeTx), s.db,
172+
err = retry.Do(ydb.WithTxControl(ctx, writeTx), s.db,
173173
func(ctx context.Context, cc *sql.Conn) (err error) {
174174
if err = ctx.Err(); err != nil {
175175
return err
@@ -199,6 +199,8 @@ func (s *Storage) Write(ctx context.Context, e generator.Row) (attempts int, err
199199
),
200200
),
201201
)
202+
203+
return attempts, err
202204
}
203205

204206
func (s *Storage) createTable(ctx context.Context) error {
@@ -239,10 +241,16 @@ func (s *Storage) close(ctx context.Context) error {
239241
}
240242

241243
if err := s.db.Close(); err != nil {
242-
return err
244+
return fmt.Errorf("error close database/sql driver: %w", err)
243245
}
246+
244247
if err := s.c.Close(); err != nil {
245-
return err
248+
return fmt.Errorf("error close connector: %w", err)
246249
}
247-
return s.cc.Close(ctx)
250+
251+
if err := s.cc.Close(ctx); err != nil {
252+
return fmt.Errorf("error close ydb driver: %w", err)
253+
}
254+
255+
return nil
248256
}

tests/slo/go.mod

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,27 +7,34 @@ require (
77
github.com/ydb-platform/gorm-driver v0.0.6-0.20230529184330-9104dd08ecae
88
github.com/ydb-platform/ydb-go-sdk-auth-environ v0.1.3
99
github.com/ydb-platform/ydb-go-sdk-zap v0.15.0
10-
github.com/ydb-platform/ydb-go-sdk/v3 v3.47.2
10+
github.com/ydb-platform/ydb-go-sdk/v3 v3.47.3
1111
go.uber.org/zap v1.24.0
1212
golang.org/x/sync v0.1.0
1313
golang.org/x/time v0.3.0
1414
gorm.io/gorm v1.25.1
15+
xorm.io/xorm v1.3.2
1516
)
1617

1718
require (
1819
github.com/beorn7/perks v1.0.1 // indirect
1920
github.com/cespare/xxhash/v2 v2.2.0 // indirect
21+
github.com/goccy/go-json v0.8.1 // indirect
2022
github.com/golang-jwt/jwt v3.2.2+incompatible // indirect
2123
github.com/golang-jwt/jwt/v4 v4.5.0 // indirect
2224
github.com/golang/protobuf v1.5.3 // indirect
25+
github.com/golang/snappy v0.0.4 // indirect
2326
github.com/google/uuid v1.3.0 // indirect
2427
github.com/jinzhu/inflection v1.0.0 // indirect
2528
github.com/jinzhu/now v1.1.5 // indirect
2629
github.com/jonboulle/clockwork v0.4.0 // indirect
30+
github.com/json-iterator/go v1.1.12 // indirect
2731
github.com/matttproud/golang_protobuf_extensions v1.0.1 // indirect
32+
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
33+
github.com/modern-go/reflect2 v1.0.2 // indirect
2834
github.com/prometheus/client_model v0.3.0 // indirect
2935
github.com/prometheus/common v0.37.0 // indirect
3036
github.com/prometheus/procfs v0.8.0 // indirect
37+
github.com/syndtr/goleveldb v1.0.0 // indirect
3138
github.com/yandex-cloud/go-genproto v0.0.0-20230403093326-123923969dc6 // indirect
3239
github.com/ydb-platform/ydb-go-genproto v0.0.0-20230528143953-42c825ace222 // indirect
3340
github.com/ydb-platform/ydb-go-yc v0.10.2 // indirect
@@ -40,6 +47,9 @@ require (
4047
google.golang.org/genproto v0.0.0-20230403163135-c38d8f061ccd // indirect
4148
google.golang.org/grpc v1.54.0 // indirect
4249
google.golang.org/protobuf v1.30.0 // indirect
50+
xorm.io/builder v0.3.11-0.20220531020008-1bd24a7dc978 // indirect
4351
)
4452

4553
replace github.com/ydb-platform/ydb-go-sdk/v3 => ../../.
54+
55+
replace xorm.io/xorm => github.com/ydb-platform/xorm v0.0.3

0 commit comments

Comments
 (0)