Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit4e95b1d

Browse files
authored
fix: revert changes to GetRunningPrebuiltWorkspaces (#18688)
… (#18588)"This reverts commit258a839.
1 parent3d22e27 commit4e95b1d

File tree

3 files changed

+25
-188
lines changed

3 files changed

+25
-188
lines changed

‎coderd/database/querier_test.go‎

Lines changed: 3 additions & 92 deletions
Original file line numberDiff line numberDiff line change
@@ -3758,9 +3758,9 @@ func createPrebuiltWorkspace(
37583758
job:=dbgen.ProvisionerJob(t,db,nil, database.ProvisionerJob{
37593759
Type:database.ProvisionerJobTypeWorkspaceBuild,
37603760
OrganizationID:orgID,
3761-
CreatedAt:now.Add(-1*time.Minute),
3762-
CompletedAt: sql.NullTime{Time:now,Valid:true},
3763-
Error:jobError,
3761+
3762+
CreatedAt:now.Add(-1*time.Minute),
3763+
Error:jobError,
37643764
})
37653765

37663766
// create ready agents
@@ -3930,95 +3930,6 @@ func TestWorkspacePrebuildsView(t *testing.T) {
39303930
}
39313931
}
39323932

3933-
funcTestGetRunningPrebuiltWorkspaces(t*testing.T) {
3934-
t.Parallel()
3935-
if!dbtestutil.WillUsePostgres() {
3936-
t.SkipNow()
3937-
}
3938-
3939-
now:=dbtime.Now()
3940-
orgID:=uuid.New()
3941-
userID:=uuid.New()
3942-
3943-
testCases:= []struct {
3944-
namestring
3945-
readyAgentsint
3946-
notReadyAgentsint
3947-
expectRowsint
3948-
expectReadybool
3949-
}{
3950-
{
3951-
name:"one ready agent",
3952-
readyAgents:1,
3953-
notReadyAgents:0,
3954-
expectRows:1,
3955-
expectReady:true,
3956-
},
3957-
{
3958-
name:"one not ready agent",
3959-
readyAgents:0,
3960-
notReadyAgents:1,
3961-
expectRows:1,
3962-
expectReady:false,
3963-
},
3964-
{
3965-
name:"one ready, one not ready",
3966-
readyAgents:1,
3967-
notReadyAgents:1,
3968-
expectRows:1,
3969-
expectReady:false,
3970-
},
3971-
{
3972-
name:"both ready",
3973-
readyAgents:2,
3974-
notReadyAgents:0,
3975-
expectRows:1,
3976-
expectReady:true,
3977-
},
3978-
{
3979-
name:"five ready, one not ready",
3980-
readyAgents:5,
3981-
notReadyAgents:1,
3982-
expectRows:1,
3983-
expectReady:false,
3984-
},
3985-
}
3986-
3987-
for_,tc:=rangetestCases {
3988-
t.Run(tc.name,func(t*testing.T) {
3989-
t.Parallel()
3990-
3991-
sqlDB:=testSQLDB(t)
3992-
err:=migrations.Up(sqlDB)
3993-
require.NoError(t,err)
3994-
db:=database.New(sqlDB)
3995-
3996-
ctx:=testutil.Context(t,testutil.WaitShort)
3997-
3998-
dbgen.Organization(t,db, database.Organization{
3999-
ID:orgID,
4000-
})
4001-
dbgen.User(t,db, database.User{
4002-
ID:userID,
4003-
})
4004-
4005-
tmpl:=createTemplate(t,db,orgID,userID)
4006-
tmplV1:=createTmplVersionAndPreset(t,db,tmpl,tmpl.ActiveVersionID,now,nil)
4007-
createPrebuiltWorkspace(ctx,t,db,tmpl,tmplV1,orgID,now,&createPrebuiltWorkspaceOpts{
4008-
readyAgents:tc.readyAgents,
4009-
notReadyAgents:tc.notReadyAgents,
4010-
})
4011-
4012-
workspacePrebuilds,err:=db.GetRunningPrebuiltWorkspaces(ctx)
4013-
require.NoError(t,err)
4014-
require.Len(t,workspacePrebuilds,tc.expectRows)
4015-
iftc.expectRows>0 {
4016-
require.Equal(t,tc.expectReady,workspacePrebuilds[0].Ready)
4017-
}
4018-
})
4019-
}
4020-
}
4021-
40223933
funcTestGetPresetsBackoff(t*testing.T) {
40233934
t.Parallel()
40243935
if!dbtestutil.WillUsePostgres() {

‎coderd/database/queries.sql.go‎

Lines changed: 11 additions & 48 deletions
Some generated files are not rendered by default. Learn more aboutcustomizing how changed files appear on GitHub.

‎coderd/database/queries/prebuilds.sql‎

Lines changed: 11 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -49,55 +49,18 @@ WHERE tvp.desired_instances IS NOT NULL -- Consider only presets that have a pre
4949
AND (t.id=sqlc.narg('template_id')::uuidORsqlc.narg('template_id') ISNULL);
5050

5151
-- name: GetRunningPrebuiltWorkspaces :many
52-
WITH latest_prebuildsAS (
53-
SELECT
54-
latest_build.workspace_id,
55-
workspaces.name,
56-
workspaces.template_id,
57-
latest_build.template_version_id,
58-
latest_build.template_version_preset_id,
59-
latest_build.job_id,
60-
workspaces.created_at
61-
FROM workspaces
62-
JOIN LATERAL (
63-
SELECT
64-
workspace_builds.workspace_id,
65-
workspace_builds.template_version_id,
66-
workspace_builds.job_id,
67-
workspace_builds.template_version_preset_id
68-
FROM workspace_builds
69-
JOIN provisioner_jobsONprovisioner_jobs.id=workspace_builds.job_id
70-
WHEREworkspace_builds.workspace_id=workspaces.id
71-
ANDworkspace_builds.transition='start'::workspace_transition
72-
ANDprovisioner_jobs.job_status='succeeded'::provisioner_job_status
73-
ORDER BYworkspace_builds.build_numberDESC
74-
LIMIT1
75-
)AS latest_buildON true
76-
WHEREworkspaces.deleted= false
77-
ANDworkspaces.owner_id='c42fdf75-3097-471c-8c33-fb52454d81c0'::UUID
78-
),
79-
ready_agentsAS (
80-
SELECT
81-
latest_prebuilds.job_id,
82-
BOOL_AND(workspace_agents.lifecycle_state='ready'::workspace_agent_lifecycle_state)::booleanAS ready
83-
FROM latest_prebuilds
84-
JOIN workspace_resourcesONworkspace_resources.job_id=latest_prebuilds.job_id
85-
JOIN workspace_agentsONworkspace_agents.resource_id=workspace_resources.id
86-
WHEREworkspace_agents.deleted= false
87-
ANDworkspace_agents.parent_id ISNULL
88-
GROUP BYlatest_prebuilds.job_id
89-
)
9052
SELECT
91-
latest_prebuilds.workspace_idAS id,
92-
latest_prebuilds.name,
93-
latest_prebuilds.template_id,
94-
latest_prebuilds.template_version_id,
95-
latest_prebuilds.template_version_preset_idAS current_preset_id,
96-
COALESCE(ready_agents.ready, false)::booleanAS ready,
97-
latest_prebuilds.created_at
98-
FROM latest_prebuilds
99-
LEFT JOIN ready_agentsONready_agents.job_id=latest_prebuilds.job_id
100-
ORDER BYlatest_prebuilds.workspace_idASC;
53+
p.id,
54+
p.name,
55+
p.template_id,
56+
b.template_version_id,
57+
p.current_preset_idAS current_preset_id,
58+
p.ready,
59+
p.created_at
60+
FROM workspace_prebuilds p
61+
INNER JOIN workspace_latest_builds bONb.workspace_id=p.id
62+
WHERE (b.transition='start'::workspace_transition
63+
ANDb.job_status='succeeded'::provisioner_job_status);
10164

10265
-- name: CountInProgressPrebuilds :many
10366
-- CountInProgressPrebuilds returns the number of in-progress prebuilds, grouped by preset ID and transition.

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp