drizzle-team / drizzle-team/drizzle-orm
[BUG]: Logger doesn't print iterator queries
- Dominant language
- TypeScript
- Stars
- 35.8k
- Forks
- 1.6k
- Avg merge
- 2d 7h
- Merged PRs (30d)
- 4
Description
### What version of `drizzle-orm` are you using?
0.30.10
### What version of `drizzle-kit` are you using?
0.21.4
### Describe the Bug
When I'm using an `.iterator(params)` on a prepared statement (`cloneClients`), I don't see any `Query: select ...` logs, but I noticed that `.execute(params)` (`cloneEdgesServices`) works fine.
Code samples
```ts
// connection.ts
import { drizzle } from "drizzle-orm/mysql2";
import { createConnection } from "mysql2";
import { config } from "../config";
export const connection = createConnection(config.DATABASE_URL);
export const db = drizzle(connection, {
logger: true,
});
export type DB = typeof db;
```
```ts
// queries.ts
const selectClients = db
.select()
.from(clients)
.where(inArray(clients.serviceId, sql`(${sql.placeholder('sourceServiceIds')})`))
.prepare();
export async function cloneClients(sourceServiceIds: number[], targetServiceId: number) {
const inserts = [];
for await (const client of selectClients.iterator({ sourceServiceIds })) {
const newClient: typeof clients.$inferInsert = {
...client,
// omitted
};
inserts.push(db.insert(clients).values(newClient));
}
await Promise.all(inserts);
}
const selectEdgesServices = db
.select({
edgeId: edgesServices.edgeId,
active: edgesServices.active,
})
.from(edgesServices)
.where(inArray(edgesServices.serviceId, sql`(${sql.placeholder('sourceServiceIds')})`))
.prepare();
export async function cloneEdgesServices(sourceServiceIds: number[], targetServiceId: number) {
const rows = await selectEdgesServices.execute({ sourceServiceIds });
const values = rows.map((edgeService): typeof edgesServices.$inferInsert => ({
...edgeService,
// omitted
}));
await db.insert(edgesServices).values(values);
}
```
### Expected behavior
See `Query: select...` logs from `.iterator(params)` just like `.execute(params)` calls.
### Environment & setup
- MySQL 5.7 with mysql2 driver
Contributor guide
Assessment
This issue has not been assessed yet.