Skip to content

Conversation

@devsjc
Copy link
Contributor

@devsjc devsjc commented Nov 5, 2025

  • Have you followed the Open Climate Fix Contribution Guidelines?
  • Have you referenced the Issue this PR addresses?
  • Have you checked to ensure there aren't other open Pull Requests for the same change?
  • Have you added a summary of the changes?
  • Have you written new tests for your changes?.
  • Have you successfully run make lint with your changes locally?
  • Have you successfully run make gen with your changes locally?
  • Have you successfully run make test with your changes locally?

Implements GetLatestObservation RPC for fetching the last observed value before a given time for a location. Part of #18

@github-actions
Copy link

github-actions bot commented Nov 5, 2025

Benchmark Results

Benchmark results
?   	github.com/openclimatefix/data-platform/cmd	[no test files]
?   	github.com/openclimatefix/data-platform/internal/gen/ocf/dp	[no test files]
?   	github.com/openclimatefix/data-platform/internal/interceptors	[no test files]
PASS
ok  	github.com/openclimatefix/data-platform/internal/server/dummy	0.004s
{"level":"debug","time":"2025-11-05T12:08:09Z","message":"Running migrations"}
goos: linux
goarch: amd64
pkg: github.com/openclimatefix/data-platform/internal/server/postgres
cpu: AMD EPYC 7763 64-Core Processor                
BenchmarkPostgresClient/6144000/GetForecastAsTimeseries-4         	     219	   5156752 ns/op
BenchmarkPostgresClient/6144000/GetForecastAtTimestamp-4          	      42	 105512882 ns/op
BenchmarkPostgresClient/6144000/GetObservationsAsTimeseries-4     	     919	   1238934 ns/op
BenchmarkPostgresClient/6144000/CreateForecast-4                  	     464	   2496892 ns/op
PASS
ok  	github.com/openclimatefix/data-platform/internal/server/postgres	112.357s
?   	github.com/openclimatefix/data-platform/internal/server/postgres/gen	[no test files]
Benchmark vs base branch
goos: linux
goarch: amd64
pkg: github.com/openclimatefix/data-platform/internal/server/postgres
cpu: AMD EPYC 7763 64-Core Processor                
                                                     │ bench-main.txt │ bench-devsjc-latest-observation.txt  │
                                                     │     sec/op     │    sec/op     vs base                │
PostgresClient/6144000/GetForecastAsTimeseries-4         4.826m ± ∞ ¹   5.157m ± ∞ ¹       ~ (p=1.000 n=1) ²
PostgresClient/6144000/GetForecastAtTimestamp-4          105.0m ± ∞ ¹   105.5m ± ∞ ¹       ~ (p=1.000 n=1) ²
PostgresClient/6144000/GetObservationsAsTimeseries-4     1.307m ± ∞ ¹   1.239m ± ∞ ¹       ~ (p=1.000 n=1) ²
PostgresClient/6144000/CreateForecast-4                  2.612m ± ∞ ¹   2.497m ± ∞ ¹       ~ (p=1.000 n=1) ²
geomean                                                  6.449m         6.405m        -0.68%
¹ need >= 6 samples for confidence interval at level 0.95
² need >= 4 samples to detect a difference at alpha level 0.05

@devsjc devsjc merged commit c32f255 into main Nov 5, 2025
3 checks passed
@devsjc devsjc deleted the devsjc/latest-observation branch November 5, 2025 12:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants