Skip to content

Commit 041837d

Browse files
V0.7.1 minor fixes (#1097)
* Minor bug fixes * fixed Ui changes for disable sources in non connected state --------- Co-authored-by: Prakriti Solankey <[email protected]>
1 parent 5444e6b commit 041837d

File tree

5 files changed

+81
-53
lines changed

5 files changed

+81
-53
lines changed

backend/score.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -159,13 +159,14 @@ async def create_source_knowledge_graph_url(
159159
# Set the status "Success" becuase we are treating these error already handled by application as like custom errors.
160160
json_obj = {'error_message':error_message, 'status':'Success','db_url':uri, 'userName':userName, 'database':database,'success_count':1, 'source_type': source_type, 'source_url':source_url, 'wiki_query':wiki_query, 'logging_time': formatted_time(datetime.now(timezone.utc)),'email':email}
161161
logger.log_struct(json_obj, "INFO")
162+
logging.exception(f'File Failed in upload: {e}')
162163
return create_api_response('Failed',message=message + error_message[:80],error=error_message,file_source=source_type)
163164
except Exception as e:
164165
error_message = str(e)
165166
message = f" Unable to create source node for source type: {source_type} and source: {source}"
166167
json_obj = {'error_message':error_message, 'status':'Failed','db_url':uri, 'userName':userName, 'database':database,'failed_count':1, 'source_type': source_type, 'source_url':source_url, 'wiki_query':wiki_query, 'logging_time': formatted_time(datetime.now(timezone.utc)),'email':email}
167168
logger.log_struct(json_obj, "ERROR")
168-
logging.exception(f'Exception Stack trace:')
169+
logging.exception(f'Exception Stack trace upload:{e}')
169170
return create_api_response('Failed',message=message + error_message[:80],error=error_message,file_source=source_type)
170171
finally:
171172
gc.collect()
@@ -284,6 +285,7 @@ async def extract_knowledge_graph_from_file(
284285
json_obj = {'api_name':'extract','message':error_message,'file_created_at':formatted_time(node_detail[0]['created_time']),'error_message':error_message, 'file_name': file_name,'status':'Completed',
285286
'db_url':uri, 'userName':userName, 'database':database,'success_count':1, 'source_type': source_type, 'source_url':source_url, 'wiki_query':wiki_query, 'logging_time': formatted_time(datetime.now(timezone.utc)),'email':email}
286287
logger.log_struct(json_obj, "INFO")
288+
logging.exception(f'File Failed in extraction: {e}')
287289
return create_api_response("Failed", message = error_message, error=error_message, file_name=file_name)
288290
except Exception as e:
289291
message=f"Failed To Process File:{file_name} or LLM Unable To Parse Content "
@@ -295,6 +297,7 @@ async def extract_knowledge_graph_from_file(
295297
json_obj = {'api_name':'extract','message':message,'file_created_at':formatted_time(node_detail[0]['created_time']),'error_message':error_message, 'file_name': file_name,'status':'Failed',
296298
'db_url':uri, 'userName':userName, 'database':database,'failed_count':1, 'source_type': source_type, 'source_url':source_url, 'wiki_query':wiki_query, 'logging_time': formatted_time(datetime.now(timezone.utc)),'email':email}
297299
logger.log_struct(json_obj, "ERROR")
300+
logging.exception(f'File Failed in extraction: {e}')
298301
return create_api_response('Failed', message=message + error_message[:100], error=error_message, file_name = file_name)
299302
finally:
300303
gc.collect()

backend/src/document_sources/gcs_bucket.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ def merge_file_gcs(bucket_name, original_file_name: str, folder_name_sha1_hashed
115115
if blob.exists():
116116
logging.info(f'Blob Name: {blob.name}')
117117
chunks.append(blob.download_as_bytes())
118-
blob.delete()
118+
blob.delete()
119119

120120
merged_file = b"".join(chunks)
121121
file_name_with__hashed_folder = folder_name_sha1_hashed +'/'+original_file_name

backend/src/graphDB_dataAccess.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,10 @@ def update_exception_db(self, file_name, exp_msg, retry_condition):
2020
try:
2121
job_status = "Failed"
2222
result = self.get_current_status_document_node(file_name)
23-
is_cancelled_status = result[0]['is_cancelled']
24-
if bool(is_cancelled_status) == True:
25-
job_status = 'Cancelled'
23+
if len(result) > 0:
24+
is_cancelled_status = result[0]['is_cancelled']
25+
if bool(is_cancelled_status) == True:
26+
job_status = 'Cancelled'
2627
if retry_condition is not None:
2728
retry_condition = None
2829
self.graph.query("""MERGE(d:Document {fileName :$fName}) SET d.status = $status, d.errorMessage = $error_msg, d.retry_condition = $retry_condition""",

frontend/src/components/Content.tsx

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -154,10 +154,10 @@ const Content: React.FC<ContentProps> = ({
154154
? postProcessingTasks.filter((task) => task !== 'graph_schema_consolidation')
155155
: postProcessingTasks
156156
: hasSelections
157-
? postProcessingTasks.filter(
157+
? postProcessingTasks.filter(
158158
(task) => task !== 'graph_schema_consolidation' && task !== 'enable_communities'
159159
)
160-
: postProcessingTasks.filter((task) => task !== 'enable_communities');
160+
: postProcessingTasks.filter((task) => task !== 'enable_communities');
161161
if (payload.length) {
162162
const response = await postProcessing(payload);
163163
if (response.data.status === 'Success') {
@@ -542,9 +542,8 @@ const Content: React.FC<ContentProps> = ({
542542
let finalUrl = bloomUrl;
543543
if (userCredentials?.database && userCredentials.uri && userCredentials.userName) {
544544
const uriCoded = userCredentials.uri.replace(/:\d+$/, '');
545-
const connectURL = `${uriCoded.split('//')[0]}//${userCredentials.userName}@${uriCoded.split('//')[1]}:${
546-
userCredentials.port ?? '7687'
547-
}`;
545+
const connectURL = `${uriCoded.split('//')[0]}//${userCredentials.userName}@${uriCoded.split('//')[1]}:${userCredentials.port ?? '7687'
546+
}`;
548547
const encodedURL = encodeURIComponent(connectURL);
549548
finalUrl = bloomUrl?.replace('{CONNECT_URL}', encodedURL);
550549
}
@@ -611,12 +610,12 @@ const Content: React.FC<ContentProps> = ({
611610
return prev.map((f) => {
612611
return f.name === filename
613612
? {
614-
...f,
615-
status: 'Ready to Reprocess',
616-
processingProgress: isStartFromBegining ? 0 : f.processingProgress,
617-
nodesCount: isStartFromBegining ? 0 : f.nodesCount,
618-
relationshipsCount: isStartFromBegining ? 0 : f.relationshipsCount,
619-
}
613+
...f,
614+
status: 'Ready to Reprocess',
615+
processingProgress: isStartFromBegining ? 0 : f.processingProgress,
616+
nodesCount: isStartFromBegining ? 0 : f.nodesCount,
617+
relationshipsCount: isStartFromBegining ? 0 : f.relationshipsCount,
618+
}
620619
: f;
621620
});
622621
});
@@ -1006,6 +1005,7 @@ const Content: React.FC<ContentProps> = ({
10061005
placement='top'
10071006
fill='outlined'
10081007
onClick={handleSchemaView}
1008+
disabled={!connectionStatus}
10091009
>
10101010
<Hierarchy1Icon />
10111011
</ButtonWithToolTip>

frontend/src/components/Layout/SideNav.tsx

Lines changed: 61 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,66 @@ const SideNav: React.FC<SideNavProps> = ({
7777
}
7878
};
7979

80+
81+
const renderDataSourceItems = () => {
82+
const dataSourceItems = [];
83+
84+
if (!isLargeDesktop && !isReadOnlyUser && position === 'left') {
85+
if (connectionStatus) {
86+
dataSourceItems.push(
87+
<SideNavigation.Item
88+
key="local"
89+
icon={
90+
<TooltipWrapper tooltip='Local Files' placement='right'>
91+
<DropZoneForSmallLayouts />
92+
</TooltipWrapper>
93+
}
94+
/>
95+
);
96+
}
97+
98+
if (APP_SOURCES.includes('gcs') && connectionStatus && position === 'left') {
99+
dataSourceItems.push(
100+
<SideNavigation.Item
101+
key="gcs"
102+
icon={
103+
<TooltipWrapper tooltip='GCS Files' placement='right'>
104+
<GCSButton isLargeDesktop={false} openModal={toggleGCSModal}></GCSButton>
105+
</TooltipWrapper>
106+
}
107+
/>
108+
);
109+
}
110+
111+
if (APP_SOURCES.includes('s3') && connectionStatus && position === 'left') {
112+
dataSourceItems.push(
113+
<SideNavigation.Item
114+
key="s3"
115+
icon={
116+
<TooltipWrapper tooltip='S3 Files' placement='right'>
117+
<S3Component isLargeDesktop={false} openModal={toggles3Modal}></S3Component>
118+
</TooltipWrapper>
119+
}
120+
/>
121+
);
122+
}
123+
124+
if (APP_SOURCES.includes('web') && connectionStatus && position === 'left') {
125+
dataSourceItems.push(
126+
<SideNavigation.Item
127+
key="web"
128+
icon={
129+
<TooltipWrapper tooltip='Web Sources' placement='right'>
130+
<WebButton isLargeDesktop={false} openModal={toggleGenericModal}></WebButton>
131+
</TooltipWrapper>
132+
}
133+
/>
134+
);
135+
}
136+
}
137+
return dataSourceItems;
138+
};
139+
80140
return (
81141
<div style={{ height: 'calc(100vh - 58px)', minHeight: '200px', display: 'flex' }}>
82142
<SideNavigation hasIconMenu={true} isExpanded={false} position={position}>
@@ -114,43 +174,7 @@ const SideNav: React.FC<SideNavProps> = ({
114174
}
115175
/>
116176
)}
117-
118-
{!isLargeDesktop && position === 'left' && !isReadOnlyUser && (
119-
<SideNavigation.Item
120-
icon={
121-
<TooltipWrapper tooltip='Local Files' placement='right'>
122-
<DropZoneForSmallLayouts />
123-
</TooltipWrapper>
124-
}
125-
/>
126-
)}
127-
{!isLargeDesktop && APP_SOURCES.includes('gcs') && position === 'left' && !isReadOnlyUser && (
128-
<SideNavigation.Item
129-
icon={
130-
<TooltipWrapper tooltip='GCS Files' placement='right'>
131-
<GCSButton isLargeDesktop={isLargeDesktop} openModal={toggleGCSModal}></GCSButton>
132-
</TooltipWrapper>
133-
}
134-
/>
135-
)}
136-
{!isLargeDesktop && APP_SOURCES.includes('s3') && position === 'left' && !isReadOnlyUser && (
137-
<SideNavigation.Item
138-
icon={
139-
<TooltipWrapper tooltip='S3 Files' placement='right'>
140-
<S3Component isLargeDesktop={isLargeDesktop} openModal={toggles3Modal}></S3Component>
141-
</TooltipWrapper>
142-
}
143-
/>
144-
)}
145-
{!isLargeDesktop && APP_SOURCES.includes('web') && position === 'left' && !isReadOnlyUser && (
146-
<SideNavigation.Item
147-
icon={
148-
<TooltipWrapper tooltip='Web Sources' placement='right'>
149-
<WebButton isLargeDesktop={isLargeDesktop} openModal={toggleGenericModal}></WebButton>
150-
</TooltipWrapper>
151-
}
152-
></SideNavigation.Item>
153-
)}
177+
{renderDataSourceItems()}
154178
{position === 'right' && isExpanded && (
155179
<>
156180
<Tooltip type='simple' placement={'left'}>

0 commit comments

Comments
 (0)