# 01008 — implicit_zero_bit_padding

> PostgreSQL SQLSTATE 01008 names a warning for implicit zero-bit padding; the fixed core scan provides no emitting path.
---

# 01008 — implicit_zero_bit_padding

## At a glance {#at-a-glance}

`01008` names a warning-category condition for implicit zero-bit padding. No resolved 18.6 core/contrib report group was found, so no specific bit-string conversion or message is confirmed.

<!-- BEGIN SQLSTATE FACTS: generated by scripts/generate.py; do not edit -->

| Field | Value |
| --- | --- |
| SQLSTATE | `01008` |
| Condition | `implicit_zero_bit_padding` |
| Status | `active` |
| Known present by | `7.4` |
| Locked snapshots | `9.0.23, 9.1.24, 9.2.24, 9.3.25, 9.4.26, 9.5.25, 9.6.24, 10.23, 11.22, 12.22, 13.23, 14.24, 15.19, 16.15, 17.11, 18.6, 19beta3` |
| Macros | `ERRCODE_WARNING_IMPLICIT_ZERO_BIT_PADDING` |
| Aliases | `—` |

<!-- source facts: data/errcodes/01008.json -->
<!-- END SQLSTATE FACTS -->

## Meaning {#meaning}

The definition names implicit zero-bit padding as a warning condition. The fixed source scan does not locate the conversion or interface that would produce it.

## Messages and diagnostics {#messages}

No resolved 18.6 message variant was found. Preserve the producer, source and destination bit-string types, declared lengths, and complete diagnostic.

## Diagnosis {#diagnosis}

Locate the actual type-conversion or driver path and compare its padding rule with the declared bit length. Do not infer padding from an ordinary string truncation or from a query that returns no rows.

## Response {#response}

Use the producer's explicit bit length or conversion form when padding is unintended, and verify the resulting value. Do not treat a warning code as proof that a statement was rolled back.

## Versions {#versions}

`01008` is present from the locked 9.0.23 snapshot through 18.6 and 19 Beta 3, with `known_present_by` 7.4. The available evidence establishes definition presence only.

## Related {#related}

[`01004`](../01004/) concerns string truncation; [`01003`](../01003/) concerns null elimination; [`22021`](../22021/) is an encoding error category.

## Sources {#sources}

- [`errcodes.txt`](https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/errcodes.txt#L86) — definition, SHA-256 `6e8de346643ba84aa3c9c6a73360acfc7b2dfb89162c06c08ce9bf5bcd5bbcba`.
- [Structured evidence](../data/evidence/01008.json) — fixed sources, message groups, and runtime boundary.
