diff --git a/superset-frontend/packages/superset-ui-core/src/components/CachedLabel/TooltipContent.test.tsx b/superset-frontend/packages/superset-ui-core/src/components/CachedLabel/TooltipContent.test.tsx
index 72629c868b2..2bc44409e44 100644
--- a/superset-frontend/packages/superset-ui-core/src/components/CachedLabel/TooltipContent.test.tsx
+++ b/superset-frontend/packages/superset-ui-core/src/components/CachedLabel/TooltipContent.test.tsx
@@ -36,3 +36,12 @@ test('Rendering TooltipContent correctly - with timestep', () => {
.fromNow()}. Click to force-refresh`,
);
});
+
+test('Rendering TooltipContent correctly - semantic cache', () => {
+ render();
+ expect(screen.getByTestId('tooltip-content')?.textContent).toBe(
+ `Loaded from semantic smart cache ${extendedDayjs
+ .utc('01-01-2000')
+ .fromNow()}. Click to force-refresh`,
+ );
+});
diff --git a/superset-frontend/packages/superset-ui-core/src/components/CachedLabel/TooltipContent.tsx b/superset-frontend/packages/superset-ui-core/src/components/CachedLabel/TooltipContent.tsx
index da85ff5cd06..67cead5b8d0 100644
--- a/superset-frontend/packages/superset-ui-core/src/components/CachedLabel/TooltipContent.tsx
+++ b/superset-frontend/packages/superset-ui-core/src/components/CachedLabel/TooltipContent.tsx
@@ -23,15 +23,28 @@ import { extendedDayjs } from '../../utils/dates';
interface Props {
cachedTimestamp?: string;
+ cacheSource?: 'query' | 'semantic';
}
-export const TooltipContent: FC = ({ cachedTimestamp }) => {
+export const TooltipContent: FC = ({
+ cachedTimestamp,
+ cacheSource = 'query',
+}) => {
+ const loadedFromText =
+ cacheSource === 'semantic'
+ ? t('Loaded from semantic smart cache')
+ : t('Loaded data cached');
+ const loadedFallbackText =
+ cacheSource === 'semantic'
+ ? t('Loaded from semantic smart cache')
+ : t('Loaded from cache');
+
const cachedText = cachedTimestamp ? (
- {t('Loaded data cached')}
+ {loadedFromText}
{extendedDayjs.utc(cachedTimestamp).fromNow()}
) : (
- t('Loaded from cache')
+ loadedFallbackText
);
return (
diff --git a/superset-frontend/packages/superset-ui-core/src/components/CachedLabel/index.tsx b/superset-frontend/packages/superset-ui-core/src/components/CachedLabel/index.tsx
index 027526fe33f..018768d6684 100644
--- a/superset-frontend/packages/superset-ui-core/src/components/CachedLabel/index.tsx
+++ b/superset-frontend/packages/superset-ui-core/src/components/CachedLabel/index.tsx
@@ -29,13 +29,19 @@ export const CachedLabel: FC = ({
className,
onClick,
cachedTimestamp,
+ cacheSource = 'query',
}) => {
const [hovered, setHovered] = useState(false);
const labelType = hovered ? 'info' : 'default';
return (
}
+ title={
+
+ }
id="cache-desc-tooltip"
>