Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test data integrity #47

Merged
merged 9 commits into from
Dec 19, 2023
Merged

Test data integrity #47

merged 9 commits into from
Dec 19, 2023

Conversation

nitisht
Copy link
Member

@nitisht nitisht commented Dec 14, 2023

  • Send logs to Parseable
  • Wait for sync
  • Download parquet from the store created by Parseable for the minute
  • Compare the sent logs with the ones loaded from the downloaded parquet

Copy link
Contributor

github-actions bot commented Dec 14, 2023

CLA Assistant Lite bot All contributors have signed the CLA ✍️ ✅

@theteachr
Copy link
Contributor

I have read the CLA Document and I hereby sign the CLA

@theteachr theteachr added the enhancement New feature or request label Dec 14, 2023
@theteachr theteachr changed the title Initial commit: Add a test for data integrity Test data integrity Dec 14, 2023
@nitisht
Copy link
Member Author

nitisht commented Dec 15, 2023

recheck

- Send logs to Parseable
- Wait for sync
- Download parquet from the store created by Parseable for the minute
- Compare the sent logs with the ones loaded from the downloaded parquet
@parseablehq parseablehq deleted a comment from nitisht Dec 18, 2023
@theteachr theteachr marked this pull request as draft December 18, 2023 18:38
- Generate logs dynamically using `flog`
- Ingest across minute boundaries
@theteachr theteachr marked this pull request as ready for review December 18, 2023 20:19
integrity_test.go Outdated Show resolved Hide resolved
theteachr added a commit to parseablehq/parseable that referenced this pull request Dec 19, 2023
This is necessary for parseablehq/quest#47 to
work. When default compression algorithm was used, parquet files had
unknown compression and couldn't be loaded during integrity testing
using https://github.com/xitongsys/parquet-go.
@nitisht
Copy link
Member Author

nitisht commented Dec 19, 2023

@trueleo have you tested? does it work as expected

@trueleo
Copy link
Contributor

trueleo commented Dec 19, 2023

@theteachr It seems to be failing with

docker run --network=host trueleo8/quest:latest smoke http://localhost:8000 admin admin 
=== RUN   TestIntegrity
--- FAIL: TestIntegrity (120.11s)
2023/12/19 12:21:54 ERROR couldn't create MinIO client error="address http://localhost:9000: too many colons in address"
panic: runtime error: invalid memory address or nil pointer dereference [recovered]
        panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x7b5822]

goroutine 19 [running]:
testing.tRunner.func1.2({0x8025a0, 0xbac4d0})
        /usr/local/go/src/testing/testing.go:1545 +0x238
testing.tRunner.func1()
        /usr/local/go/src/testing/testing.go:1548 +0x397
panic({0x8025a0?, 0xbac4d0?})
        /usr/local/go/src/runtime/panic.go:914 +0x21f
quest.downloadParquetFiles({0x7ffdf254beab, 0xa}, {{0x7ffdf254bed9, 0x15}, {0x7ffdf254befb, 0xa}, {0x7ffdf254bf12, 0xa}, {0x7ffdf254bf2b, 0x9}})
        /tests/integrity_test.go:155 +0x102
quest.TestIntegrity(0x0?)
        /tests/integrity_test.go:121 +0x47b
testing.tRunner(0xc000107380, 0x8c8670)
        /usr/local/go/src/testing/testing.go:1595 +0xff
created by testing.(*T).Run in goroutine 1
        /usr/local/go/src/testing/testing.go:1648 +0x3ad

I am running with default params and created a bucket named parseable . There is some data in that bucket now, so it seems ingest step worked but afterward that it failed on the next step.

main.sh Outdated Show resolved Hide resolved
nitisht pushed a commit to parseablehq/parseable that referenced this pull request Dec 19, 2023
This is necessary for parseablehq/quest#47 to
work. When default compression algorithm was used, parquet files had
unknown compression and couldn't be loaded during integrity testing
using https://github.com/xitongsys/parquet-go.
Doing so was causing the wait time to be less than the sync time.

* Misc Updates *
- Check ingest response from Parseable
- Add logs
@nitisht nitisht merged commit c7bc0c3 into main Dec 19, 2023
1 check passed
@nitisht nitisht deleted the integrity-testing branch December 19, 2023 16:25
@github-actions github-actions bot locked and limited conversation to collaborators Dec 19, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants