Fix iceberg

This commit is contained in:
Joshen Lim committed 2026-09-30 16:27:14 +08:00
1 parent 3ce99ab038
commit b9ea7133fe
5 files changed
+24 -16

No files matched your search

@@ -8,10 +8,6 @@ export const getAnalyticsBucketS3KeyName = (bucketId: string) => {
return `${snakeCase(bucketId)}_keys`
}
export const getAnalyticsBucketFDWName = (bucketId: string) => {
return `${snakeCase(bucketId)}_fdw`
}
export const getAnalyticsBucketFDWServerName = (bucketId: string) => {
return `${snakeCase(bucketId)}_fdw_server`
}
@@ -1,6 +1,6 @@
import { useMemo } from 'react'
import { getAnalyticsBucketFDWName } from './AnalyticsBucketDetails.utils'
import { getAnalyticsBucketFDWServerName } from './AnalyticsBucketDetails.utils'
import { WRAPPER_HANDLERS } from '@/components/interfaces/Integrations/Wrappers/Wrappers.constants'
import {
getWrapperMetaForWrapper,
@@ -32,7 +32,7 @@ export const useAnalyticsBucketWrapperInstance = (
wrapper
)
)
.find((w) => w.name === getAnalyticsBucketFDWName(bucketId ?? ''))
.find((w) => w.server_name === getAnalyticsBucketFDWServerName(bucketId ?? ''))
}, [data, bucketId])
const icebergWrapperMeta = getWrapperMetaForWrapper(icebergWrapper)
@@ -1,6 +1,6 @@
import { useMemo } from 'react'
import { getVectorBucketFDWName } from './VectorBuckets.utils'
import { getVectorBucketFDWServerName } from './VectorBuckets.utils'
import {
WRAPPER_HANDLERS,
WRAPPERS,
@@ -30,7 +30,7 @@ export const useS3VectorsWrapperInstance = ({ bucketId }: { bucketId?: string })
wrapper
)
)
.find((w) => w.name === getVectorBucketFDWName(bucketId ?? ''))
.find((w) => w.server_name === getVectorBucketFDWServerName(bucketId ?? ''))
}, [data, bucketId])
const s3VectorsWrapperMeta = WRAPPERS.find((w) => w.handlerName === WRAPPER_HANDLERS.S3_VECTORS)
@@ -3,7 +3,7 @@ import { PermissionAction } from '@supabase/shared-types/out/constants'
import { useS3AccessKeyCreateMutation } from './s3-access-key-create-mutation'
import { WRAPPERS } from '@/components/interfaces/Integrations/Wrappers/Wrappers.constants'
import {
getAnalyticsBucketFDWName,
getAnalyticsBucketFDWServerName,
getAnalyticsBucketS3KeyName,
} from '@/components/interfaces/Storage/AnalyticsBuckets/AnalyticsBucketDetails/AnalyticsBucketDetails.utils'
import {
@@ -13,6 +13,7 @@ import {
import { useAPIKeys } from '@/data/api-keys/api-keys-query'
import { useProjectSettingsV2Query } from '@/data/config/project-settings-v2-query'
import { FDWCreateVariables, useFDWCreateMutation } from '@/data/fdw/fdw-create-mutation'
import { useFDWsQuery } from '@/data/fdw/fdws-query'
import { useAsyncCheckPermissions } from '@/hooks/misc/useCheckPermissions'
import { useSelectedProjectQuery } from '@/hooks/misc/useSelectedProject'
@@ -33,6 +34,12 @@ export const useIcebergWrapperCreateMutation = () => {
const wrapperMeta = WRAPPERS.find((wrapper) => wrapper.name === 'iceberg_wrapper')
const { data: fdws } = useFDWsQuery({
projectRef: project?.ref,
connectionString: project?.connectionString,
})
const hasExistingWrapper = fdws?.some((wrapper) => wrapper.name === wrapperMeta?.name) ?? false
const { can: canCreateCredentials } = useAsyncCheckPermissions(
PermissionAction.STORAGE_ADMIN_WRITE,
'*'
@@ -49,15 +56,14 @@ export const useIcebergWrapperCreateMutation = () => {
description: getAnalyticsBucketS3KeyName(bucketName),
})
const wrapperName = getAnalyticsBucketFDWName(bucketName)
const params: FDWCreateVariables = {
projectRef: project?.ref,
connectionString: project?.connectionString,
hasExistingWrapper,
wrapperMeta: wrapperMeta!,
formState: {
wrapper_name: wrapperName,
server_name: `${wrapperName}_server`,
wrapper_name: wrapperMeta!.name,
server_name: getAnalyticsBucketFDWServerName(bucketName),
vault_aws_access_key_id: createS3KeyData?.access_key,
vault_aws_secret_access_key: createS3KeyData?.secret_key,
vault_token: apiKey,
@@ -6,12 +6,12 @@ import { useS3AccessKeyCreateMutation } from './s3-access-key-create-mutation'
import { WRAPPERS } from '@/components/interfaces/Integrations/Wrappers/Wrappers.constants'
import { getVectorURI } from '@/components/interfaces/Storage/StorageSettings/StorageSettings.utils'
import {
getVectorBucketFDWName,
getVectorBucketFDWServerName,
getVectorBucketS3KeyName,
} from '@/components/interfaces/Storage/VectorBuckets/VectorBuckets.utils'
import { useProjectSettingsV2Query } from '@/data/config/project-settings-v2-query'
import { FDWCreateVariables, useFDWCreateMutation } from '@/data/fdw/fdw-create-mutation'
import { useFDWsQuery } from '@/data/fdw/fdws-query'
import { useAsyncCheckPermissions } from '@/hooks/misc/useCheckPermissions'
import { useDeploymentMode } from '@/hooks/misc/useDeploymentMode'
import { useSelectedProjectQuery } from '@/hooks/misc/useSelectedProject'
@@ -39,6 +39,12 @@ export const useS3VectorsWrapperCreateMutation = () => {
const wrapperMeta = WRAPPERS.find((wrapper) => wrapper.name === 's3_vectors_wrapper')
const { data: fdws } = useFDWsQuery({
projectRef: project?.ref,
connectionString: project?.connectionString,
})
const hasExistingWrapper = fdws?.some((wrapper) => wrapper.name === wrapperMeta?.name) ?? false
const { can: canCreateCredentials } = useAsyncCheckPermissions(
PermissionAction.STORAGE_ADMIN_WRITE,
'*'
@@ -74,15 +80,15 @@ export const useS3VectorsWrapperCreateMutation = () => {
)
}
const wrapperName = getVectorBucketFDWName(bucketName)
const serverName = getVectorBucketFDWServerName(bucketName)
const params: FDWCreateVariables = {
projectRef: project?.ref,
connectionString: project?.connectionString,
hasExistingWrapper,
wrapperMeta: wrapperMeta!,
formState: {
wrapper_name: wrapperName,
wrapper_name: wrapperMeta!.name,
server_name: serverName,
vault_access_key_id: accessKey,
vault_secret_access_key: secretKey,