Fix Razorpay webhook payload size limits
All checks were successful
build-and-deploy / build-deploy (push) Successful in 34s

This commit is contained in:
androidlover5842
2026-02-01 12:03:23 +05:30
parent 9c80a15130
commit cf0c38deb5
9 changed files with 34 additions and 16 deletions

View File

@@ -189,3 +189,11 @@ Notes / constraints
Operational notes
- Payment provider migrated: PayU removed; Razorpay now used for settings, QR, payment links, and webhooks.
- Server access: SSH host alias `hotel` is available for server operations (e.g., `ssh hotel`). Use carefully; DB changes were done via `sudo -u postgres psql` on the server when needed.
Access / ops notes (prod)
- Service: `TrisolarisServer.service` (systemd). `systemctl cat TrisolarisServer.service`.
- Deploy path: `/opt/deploy/TrisolarisServer` (runs `build/libs/*.jar`).
- Active profile: `prod` (see service Environment=SPRING_PROFILES_ACTIVE=prod).
- DB (prod): PostgreSQL `trisolaris` on `localhost:5432` (see `/opt/deploy/TrisolarisServer/src/main/resources/application-prod.properties`).
- DB (dev): PostgreSQL `trisolaris` on `192.168.1.53:5432` (see `application-dev.properties`).
- DB access (server): `sudo -u postgres psql -d trisolaris`.

View File

@@ -37,5 +37,7 @@ class RazorpayPaymentAttemptSchemaFix(
""".trimIndent()
)
}
logger.info("Ensuring razorpay_payment_attempt text column sizes")
jdbcTemplate.execute("alter table razorpay_payment_attempt alter column payload type text")
}
}

View File

@@ -37,5 +37,9 @@ class RazorpayPaymentLinkRequestSchemaFix(
""".trimIndent()
)
}
logger.info("Ensuring razorpay_payment_link_request text column sizes")
jdbcTemplate.execute("alter table razorpay_payment_link_request alter column short_url type text")
jdbcTemplate.execute("alter table razorpay_payment_link_request alter column request_payload type text")
jdbcTemplate.execute("alter table razorpay_payment_link_request alter column response_payload type text")
}
}

View File

@@ -32,5 +32,9 @@ class RazorpayWebhookLogSchemaFix(
""".trimIndent()
)
}
logger.info("Ensuring razorpay_webhook_log text column sizes")
jdbcTemplate.execute("alter table razorpay_webhook_log alter column headers type text")
jdbcTemplate.execute("alter table razorpay_webhook_log alter column payload type text")
jdbcTemplate.execute("alter table razorpay_webhook_log alter column content_type type text")
}
}

View File

@@ -40,7 +40,7 @@ class RazorpayPaymentAttempt(
@Column(name = "order_id")
var orderId: String? = null,
@Column(name = "payload")
@Column(name = "payload", columnDefinition = "text")
var payload: String? = null,
@Column(name = "received_at", nullable = false, columnDefinition = "timestamptz")

View File

@@ -34,13 +34,13 @@ class RazorpayPaymentLinkRequest(
@Column(name = "status")
var status: String,
@Column(name = "short_url")
@Column(name = "short_url", columnDefinition = "text")
var shortUrl: String? = null,
@Column(name = "request_payload")
@Column(name = "request_payload", columnDefinition = "text")
var requestPayload: String? = null,
@Column(name = "response_payload")
@Column(name = "response_payload", columnDefinition = "text")
var responsePayload: String? = null,
@Column(name = "created_at", nullable = false, columnDefinition = "timestamptz")

View File

@@ -22,25 +22,25 @@ class RazorpayQrRequest(
@JoinColumn(name = "booking_id", nullable = false)
var booking: Booking,
@Column(name = "qr_id")
@Column(name = "qr_id", columnDefinition = "text")
var qrId: String? = null,
@Column(name = "amount")
var amount: Long,
@Column(name = "currency")
@Column(name = "currency", columnDefinition = "text")
var currency: String,
@Column(name = "status")
@Column(name = "status", columnDefinition = "text")
var status: String,
@Column(name = "image_url")
@Column(name = "image_url", columnDefinition = "text")
var imageUrl: String? = null,
@Column(name = "request_payload")
@Column(name = "request_payload", columnDefinition = "text")
var requestPayload: String? = null,
@Column(name = "response_payload")
@Column(name = "response_payload", columnDefinition = "text")
var responsePayload: String? = null,
@Column(name = "expiry_at", columnDefinition = "timestamptz")

View File

@@ -17,13 +17,13 @@ class RazorpaySettings(
@JoinColumn(name = "property_id", nullable = false, unique = true)
var property: Property,
@Column(name = "key_id", nullable = false)
@Column(name = "key_id", nullable = false, columnDefinition = "text")
var keyId: String,
@Column(name = "key_secret", nullable = false)
@Column(name = "key_secret", nullable = false, columnDefinition = "text")
var keySecret: String,
@Column(name = "webhook_secret")
@Column(name = "webhook_secret", columnDefinition = "text")
var webhookSecret: String? = null,
@Column(name = "is_test", nullable = false)

View File

@@ -17,13 +17,13 @@ class RazorpayWebhookLog(
@JoinColumn(name = "property_id", nullable = false)
var property: Property,
@Column(name = "headers")
@Column(name = "headers", columnDefinition = "text")
var headers: String? = null,
@Column(name = "payload")
@Column(name = "payload", columnDefinition = "text")
var payload: String? = null,
@Column(name = "content_type")
@Column(name = "content_type", columnDefinition = "text")
var contentType: String? = null,
@Column(name = "received_at", nullable = false, columnDefinition = "timestamptz")