Failover but not loadbalanced
Hi ,
Can I deploy a webapp or application on two nodes in a cluster such that they are the whole webapp is failed over when one node goes down , but the app is not load balanced. That is I want the webapp to work only on one node at a time. When this node goes down , all requests to the webapp are routed to the next node only , even if node one were to be recovered after some time.
No, there is no easy way to have failover without loadbalancing. But, assuming that you are only using one application, you may be able to get close.
Setup loadbalancing with weighted round robin and assign the "primary" with a very large weight. (You may even be able to assign the "secondary" a weight of zero, but I haven't tested this.) Then setup the application with sticky loadbalancing.
This will force nearly all of the requests to be sent to the primary. But in a failover condition all requests will be sent to the remaining server. The sticky loadbalancing will enforce your second requirement: that once node 1 resumes that requests continue to node 2.
Similar Messages
-
Cluster failover but Availability Group do not
We recently had an issue where a file share was unavailable. It caused the cluster to failover. However, the Availability Group did not failover. The application was trying to connect to the secondary database which it couldn't since the failover had not
happened. We are set up using Quorum with a File Share Witness. We have manually failed this over successfully. Any ideas on why the Availability Group did not failover would be most appreciated. We do not have any experts in this area so please help us figure
out where to look.Availability listener are a good way of providing a fault tolerance for the client and in addition providing read-intent or read-only access to the secondary replicas. If you need it, you can go through these documentations. They show the why and how to
set them up. If you have any additinal questions let me know.
http://msdn.microsoft.com/en-us/library/hh213417.aspx
Always make sure to configure AG relevenat parts through SSMS not the cluster Service manager itself. There are some points that you might want to tweak in the cluster manager, but most parts should be configured (and for most cases they are sufficient)
in the SQL Server related tools (SSMS)
-Jens
Jens K. Suessmeyer http://blogs.msdn.com/Jenss -
Failover to local login when TACACS is reachable but not authenticating
Hello, I'm confident I already know the answer to this question but I want to be sure.
I am moving a large number of Cisco devices to a new TACACS server, is there anything that can be done to allow local login if the new TACACS server is reachable but not authenticating for some reason? For example if the Cisco source IP is not built correctly into the server or the key is not configured properly on the device; in these situations the server is reachable but will not provide authentication.
I already have AAA authentication set similar to the following:
Router1(config)#aaa authentication login default group tacacs+ line
This will allow me to use line authentication if the tacacs server is not reachable but not if the server is reachable and not authenticating properly.
Any ideas on how/if I can failover to local login for the example situation I provided above?Looks like NX-OS will not allow me to do this.
Nexus001(config)# aaa authentication login default local group TACACS
^
% Invalid command at '^' marker.
Nexus001(config)# aaa authentication login default local ?
<CR>
Nexus001(config)# aaa authentication login ?
ascii-authentication Enable ascii authentication
chap CHAP authentication for login
console Configure console methods
default Configure default methods
error-enable Enable display of error message on login failures
mschap MSCHAP authentication for login
mschapv2 MSCHAP V2 authentication for login
Nexus001(config)# aaa authentication login default ?
fallback Configure fallback behavior
group Specify server groups
local Use local username authentication
none No authentication
Nexus001(config)# aaa authentication login default local ?
<CR> -
Failover is not working in clustering
we installed infrastructure in the one system and added 2 instances app1.mycompany.com,app2.mycompany.com into it.
for loadbalancing we r using webcache.
we configured origin servers,site definitions,site-server mappings.
in the cluster two instances showing up.
that we can see in health monitor in Up/Down* parameter of web cache administrator console.
we deployed same ear in two instances.
but when i down one instance say app1.mycompany.com,
In the health monitor its not showing up DOWN parameter for host: app1.mycompany.com.same for UP also.
immediately its not showing changes when i am testing failover.
Is webcache loadbalancing is Round robin based ?
when i down one of the instances session replication is not happening properly.sometimes session expired is coming.
when 2 instances r up if user access application all the requests r coming to one instance if down that instance session expired is coming.
i think failover is not working in clustering.
i checked replication properties and added <distributable> tag in both the instances.
in webcache console page what will sessionbinding will do?i have not configured anything.Why are you using Webcache?
Web cache will certainly work, but its more common role is to more access as a simple load balancer over HTTP servers, not OC4J instances.
What I'd do is to simplify your situation to verify you have the server setup correctly.
That means using the Oracle HTTP Server which will be part of your cluster as the common routing point. OHS and mod_oc4j are session state aware and know about all the OC4J instances. In the situation where an OC4J instance dies for some reason, mod_oc4j will know to which other OC4J instance(s) the request can be routed to pickup the replicated session state.
Once you have verified that the failover is working on the backend, you can then configure another OHS instance and position webcache in front of them to act as a request router and failover handler for when the OHS instances are inactive.
The Enterprise Deployment Guide offers some guidance in typical architectures, well worth a read.
cheers
-steve- -
Failover callback not called when listener dies
I need to create a RAC-aware Pro*C application.
I got the preconfigured VirtualBox images with OL 5 and RAC nodes.
The listener is installed on both machines too. They share a single IP address for the listener, which I added to the hosts file:
192.168.56.201 rac-scan.localdomain rac-scanActually, the cluster decides to create a virtual network adapter on one of the nodes and this address is assigned to it and then the listener becomes awailable. When this node dies, the cluster starts the listener on another node.
I don't know, whether it's a proper way. I heard that the listener should be on a separate machine.
But the problem is: when I turn off the node my client program is connected to, the failover callback function is not called. The next oracle operation fails with "ORA-03114: not connected to ORACLE".
I followed http://docs.oracle.com/cd/A91202_01/901_doc/appdev.901/a89857/oci09adv.htm#428924 and https://support.oracle.com/CSP/main/article?cmd=show&type=NOT&id=415245.1 to create the sample program that registers the callback.
Could it be that the failover only works when the DB service fails, but not the listener?The problem was bad connection string
-
Failover did not happen when network switch went down!!! PLEASE HELP
Hi gurus,
Yesterday one disaster struck my RAC database. We have two node cluster and it is 10.2.0.2, both of them located in different sites, yesterday suddenly power went down and the one of the network switch went down and got destructed, node one of RAC database was connected to that switch, but the failover did not happen to the node two as this should be the case when one node goes down the other should be available for all the node one sessions/connections.
when I tried to ping/telnet the node 1, it was not happening because the switch was down, the network guyz connected the cables to other switch available. When I connected to the node 1, it was showing "Oracle is not available" message.
And when I tried the other node, it was the same case but I did not see any error in alert log file. Then my TL restarted both the nodes and then the database was available.
I am very confused that how the failover did not happen and how the database went down, PLEASE suggest something to how to identifiy what was happened. Thanks & Regards
Edited by: user1221 on Mar 18, 2009 1:09 AMAbout Oracle RAC ... you have 2 nodes ... You have to connect 4 IPs.
I mean
- IP public node1
- IP public node2
- IP Virtual node1
- IP Virtual node2
When node1 down
You can not ping "IP public node1", but you should ping "- IP Virtual node1", because it should up on node2.
But not bind 1521 port.
Idea about failover
you have to create new difference Service...on RAC Database!
and on your client have to set TNS to on failover and balance (if you used OCI), you can use TAF feature
Example:
DB =
(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = db01-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = db02-vip)(PORT = 1521)) (FAILOVER=ON)(LOAD_BALANCE = yes) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = NEW_SERVICE_DB) (FAILOVER_MODE = (TYPE = SELECT) (METHOD = BASIC) (RETRIES = 180) (DELAY = 5))))
If you use JDBC, can not use TAF.
Anyway, I suggest you read more about RAC on http://otn.oracle.com/rac and http://oracleracsig.org
Good Luck -
Failover did not happen when one node went down!!! PLEASE HELP
Hi gurus,
Yesterday one disaster struck my RAC database. We have two node cluster and it is 10.2.0.2, both of them located in different sites, yesterday suddenly power went down and the one of the network switch went down and got destructed, node one of RAC database was connected to that switch, but the failover did not happen to the node two as this should be the case when one node goes down the other should be available for all the node one sessions/connections.
when I tried to ping/telnet the node 1, it was not happening because the switch was down, the network guyz connected the cables to other switch available. When I connected to the node 1, it was showing "Oracle is not available" message.
And when I tried the other node, it was the same case but I did not see any error in alert log file. Then my TL restarted both the nodes and then the database was available.
I am very confused that how the failover did not happen and how the database went down, PLEASE suggest something to how to identifiy what was happened. Thanks & RegardsThanks for your reply,
after the network switch was replaced we connected to both the nodes and found that the instances are down with no reason given in the Alertlog file. We just restarted both the instances and then the database was up and the clients connected to both the instances with equal sessions on both the instances. I want to know that whether the failover can be done at the application side or it should be done on the database side i,e; in tnsnames.ora file with the required parameters? as in our scenario there is no failover configuration in the tnsnames.ora file.
Thanks & Regards -
Sun Access Manager 2005Q1 session failover is not working
Hi All
I m using Sun access manager 2005Q1,message queue 2005Q1, Sun Directory server 5.2 ,BerkelyDb 4.2.52 and radware hardware load balancer with sticky session.
I m have configured message queue and BerkeleyDB and both are running with any error.
I m using http://docs.sun.com/source/817-7644/ch5_scenarios.html#wp41008 doc for session failover.
Simple failover is working fine but the Session failover is not working.
Any body has done session failover with Sun Access manager 2005 Q1 I m trying to resolve this issue last two month.
Please it is urgent.It works fine in 2005Q4, after applying a patch 120954 if I am not mistaken. But 2005Q4 and 2005Q1 are probably different in terms of session failover (site configuration etc.)
1. Stop both AM servers
2. Set logging to debug mode in AMConfig.properties.
3. Delete / move everything in /var/opt/SUNWam/debug
4. tail -f /var/opt/SUNWam/debug/amSession
5. Post that file here... you should be able to see if session failover is enabled etc....
hope this helps. -
ACE MODULE IN BRIDGE MODE NOT LOADBALANCING
Hi,
I setup an ace module in bridge mode as follows:
mfsc(vla80) > (vla80)outside fwsm, fwsm inside(vla40) > (vla40)ace-clientside, aceserverside(vla41)
and the servers have the fwsm svi(vla40) as their gateway. But, the ace is not loadbalancing.
The config script is attached. Is their anything I am missing?
AttachCheck my troubleshooting guide on this forum.
There are few things to do to narrow down the issue.
Gilles. -
We are running primary and secondary ACS servers 4.0 on appliance and it has been configured for automatic replication every 6 hours between them. When the primary server goes offline bcos of network issue, the secondary is supposed to authenticate but it is not happening. Hence we are forced to use the local accounts configured in the networking device to login and make configuration. Please note all our devices are configured to use both primary and secondary ACS servers.
have anyone in this group has come across such a problem?Sudipto
There could be several things that cause your problem.
My first question would be whether the network devices and the backup server are correctly configured for each other. If you change the configuration of some network device, removing the definition of the primary ACS server so that the only server configured is the backup, does the network device authenticate with the backup?
My second question would be when there is a network issue with the primary server is it possible that the network issue also impacts connectivity to the backup server? Can you check the logs on the backup server and see whether it received authentication requests? If it did receive authentication requests what was its response (were they authenticated or denied)?
My third question is whether the network devices are attempting to failover. The best way to determine this would be from the output of some debugs. I suggest that on the router you configure debug aaa authentication and debug tacacs authentication (or radius if you are using radius instead of tacacs) . If you could post the debug output, taken when the problem is going on, it would help us to analyze your problem.
I have had some experience with certain failure modes on the ACS server in which the network devices would not fail over to the backup. I had a TAC case on this which resulted in a bugID. I am aware of several other bugIDs for similar issues where failover did not occur on remote devices due to certain failure modes on the server. But in these cases there was connectivity to the server and the server was sending a response which was not expected by the remote network device. From your description it sounds like there is no connectivity, so I assume it is not the same issue.
If you can answer the questions that I listed and provide the debug output I hope that we can help to resolve your issue.
HTH
Rick -
Exchange 2010 DAG Failover does not works
Hi Experts,
I have a Exchange 2010 setup in a DAG environment. We have 2 MBX servers in the main site and 1 MBX server in the DR site , all part of one DAG. We have 2 HUB/CAS servers in the main site and 1 HUB/CAS server in the DR site.
Recently we had to do our BCP test for audit purpose. We had issues in doing failover to the DR site and below is the error faced.
Please advise urgently on the possible causes and resolution steps for it as we need to do this test again on the coming weekend.
"EvictDagClusterNode got exception Microsoft.Exchange.Cluster.Replay.AmClusterEvictWithoutCleanupException: An Active Manager operation failed. Error An error
occurred while attempting a cluster operation. Error: Evict node 'sme-ho-mbx01' returned without the node being fully cleaned up. Please run cluster.exe node <NodeName> /forcecleanup to complete clean up for this node.. ---> System.ComponentModel.Win32Exception:
The wait operation timed out"
So, basically one of the MBX server was not evicting from the Cluster due to which failover did not work.
Would appreciate some urgent thoughts for the possible resolution.
regards
abubakar
Md.Abubakar Noorani IT Systems Engineer Serco Ltd.Hi,
Yes, you can run the Stop-DatabaseAvailabilityGroup without shutting down the Mailbox server. During the process of DAG failover to DR site, the Stop-DatabaseAvailabilityGroup cmdlet should be run against all servers in the primary datacenter. If the Mailbox
server is unavailable but Active Directory is operating in the primary datacenter, the Stop-DatabaseAvailabilityGroup command with the ConfigurationOnly parameter must be run against all servers in this state in the primary datacenter.
And please note that the Stop-DatabaseAvailabilityGroup cmdlet can be run against a DAG only when the DAG is configured with a DatacenterActivationMode value of DagOnly.
Based on the error message, it seems that you should run the cluster node nodename /forcecleanup cmdlet against the specified node in the main site. Have you tried this to check the result?
Best regards,
Belinda
Belinda Ma
TechNet Community Support -
Ip SLA failover config not working need help urgent cisco 2911 K9 router
Hi,
I am setting up failover wan for one of my cient and seems everything i have configured correctly but its not working. For track i am using google DNS ip 8.8.8.8 and 8.8.4.4 where if i ping 8.8.8.8 from router it pings but not 8.8.4.4. I I think because 8.8.4.4 no pinging so router does not jump if primary gigabitethernet0/0 down.
Not sure what i am doing wrong. Please find below config details:
-------------------------------------------config-----
username admin privilege 15 password 7 XXXXX
redundancy
track 10 ip sla 1 reachability
delay down 5 up 5
track 20 ip sla 2 reachability
delay down 5 up 5
interface GigabitEthernet0/0
ip address 122.160.79.18 255.0.0.0
ip nat outside
ip virtual-reassembly
duplex auto
speed auto
interface GigabitEthernet0/1
ip address 182.71.34.71 255.255.255.248
ip nat outside
ip virtual-reassembly
duplex auto
speed auto
interface GigabitEthernet0/2
description $ES_LAN$
ip address 200.200.201.1 255.255.255.0
ip nat inside
ip virtual-reassembly
duplex auto
speed auto
ip forward-protocol nd
no ip http server
no ip http secure-server
ip nat inside source route-map giga0 interface GigabitEthernet0/0 overload
ip nat inside source route-map giga0 interface GigabitEthernet0/0 overload
ip route 0.0.0.0 0.0.0.0 GigabitEthernet0/0 track 10
ip route 0.0.0.0 0.0.0.0 GigabitEthernet0/1 track 20
ip route 8.8.4.4 255.255.255.255 GigabitEthernet0/1 permanent
ip route 8.8.8.8 255.255.255.255 GigabitEthernet0/0 permanent
ip sla 1
icmp-echo 8.8.8.8 source-interface GigabitEthernet0/0
frequency 10
ip sla schedule 1 life forever start-time now
ip sla 2
icmp-echo 8.8.4.4 source-interface GigabitEthernet0/1
frequency 10
ip sla schedule 2 life forever start-time now
access-list 100 permit ip any any
access-list 101 permit ip any any
route-map giga0 permit 10
match ip address 100
match interface GigabitEthernet0/0
route-map giga1 permit 10
match ip address 101
match interface GigabitEthernet0/1
control-plane
------------------------------------------config endHello,
as Richard Burts state correct the nat configuration is not right. But the ICMP echo request for the IP SLA is traffic, which is generated from the router with a source-interface specified. There shouldn't be any NAT operation at all, or? Iam using IP SLA for two WAN connections too, but I can't recall ever seen an entry for the icmp operation in the output of sh ip nat trans.
To me the static route configuration looks wrong too. As far as I remember it's necessary to specify a next-hop address (Subnet/mask via x.x.x.x) on Multiple Access Broadcast Networks like ethernet, otherwise the Subnet appears as directly connected on the routing table. The configuration "ip route subnet mask <outgoing interface> only works correct for p2p links. With the configuration above i would say there is no routing at all possible except for "real" direct attached networks. Vibs said it's possible to reach the google dns 8.8.8.8 but not the second one 8.8.4.4. I verified that 8.8.4.4 usually answers to ICMP echo-request.
My guess is that the next hop for the gig 0/0 interface has proxy arp enabled but the next hop for the gig0/1 interface hasn't proxy arp turned on.
kind regards
Lukasz -
Pings work but not the content
Hi All,
I have a server 10.56.3.40 trying to access a page 10.56.10.11 which is the VIP address for the content delivered by 10.56.3.50, 60 and 70.
I can ping 10.56.10.11 from 10.56.3.40 but when I access the webpage www.net.com (DNS resolves this to the VIP address 10.56.10.11), I cannot access it.
I have the load balancer sitting in between a firewall and the server vlan203 (10.56.3.x).
The VIP address for the contents are 10.56.10.x. The CSS has 2 interfaces (one to fw with ip 10.56.10.3 and one to server vlan 203 with ip 10.56.3.3.). I have the following config
!************************* INTERFACE ********
interface 1/1
bridge vlan 999
description "Failover link to secondary"
interface 2/1
bridge vlan 210
description "Link to VIP vlan (firewall)"
interface 2/2
bridge vlan 203
description "Link to dmz servers"
!************************** CIRCUIT *********
circuit VLAN999
ip address 10.56.99.3 255.255.255.0
redundancy-protocol
circuit VLAN210
redundancy
ip address 10.56.10.3 255.255.255.0
circuit VLAN203
redundancy
ip address 10.56.3.3 255.255.255.0
!************************** SERVICE **************
service 10.56.3.50-443
ip address 10.56.3.50
port 443
keepalive frequency 10
keepalive type ssl
keepalive port 443
active
service 10.56.3.50-80
ip address 10.56.3.50
port 80
keepalive frequency 10
keepalive type http
keepalive port 80
keepalive uri "/lbcheck.asp"
active
service 10.56.3.60-443
ip address 10.56.3.60
port 443
keepalive frequency 10
keepalive type ssl
keepalive port 443
active
service 10.56.3.60-80
ip address 10.56.3.60
port 80
keepalive frequency 10
keepalive type http
keepalive port 80
keepalive uri "/lbcheck.asp"
active
service 10.56.3.70-443
ip address 10.56.3.70
port 443
keepalive frequency 10
keepalive type ssl
keepalive port 443
active
service 10.56.3.70-80
ip address 10.56.3.70
port 80
keepalive frequency 10
keepalive type http
keepalive port 80
keepalive uri "/lbcheck.asp"
active
!*************************** OWNER ****************
content www.net.com
add service 10.56.3.50-80
vip address 10.56.10.11
add service 10.56.3.60-80
add service 10.56.3.70-80
protocol tcp
port 80
active
!**************************** ACL ***********
acl 1
clause 1 bypass any 10.0.0.0 255.0.0.0 destination 10.56.3.0 255.255.255.0
clause 2 bypass any 192.168.0.0 255.255.0.0 destination 10.56.3.0 255.255.255.0
clause 100 permit any any destination any
apply circuit-(VLAN210)
acl 2
clause 10 permit tcp 10.16.3.0 255.255.255.0 destination 10.16.10.0 255.255.255.0 eq 80
clause 20 permit tcp 10.56.3.0 255.255.255.0 destination 10.56.10.0 255.255.255.0 eq 443
clause 30 bypass any 10.56.3.0 255.255.255.0 destination any
clause 25 permit tcp 10.56.3.0 255.255.255.0 destination 10.56.10.0 255.255.255.0 eq 25
apply circuit-(VLAN203)
acl 3
clause 1 permit any any destination any
I do not see any asymetric routing. But not sure why port 80 traffic is not accessible from vlan203.classic nat issue.
When x.x.3.40 goes to the vip, the destination address is changed to one of the servers ie: x.x.3.50.
Now, the response from x.x.3.50 must be sent to....x.x.3.40
They are on the same subnet, so x.x.3.50 responds directly to x.x.3.40, bypassing the CSS.
You need to do client naton the css to nat request from the servers.
service servicex40
ip address 10.56.3.40
active
group servernat
vip address 10.56.10.11
add service servicex40
active
If more addresses need to be nated, you may want to use acl to do this.
This has been discussed many times, so you should be able to find sample configs and documentation.
Regards,
Gilles. -
Can you check for data in one table or another but not both in one query?
I have a situation where I need to link two tables together but the data may be in another (archive) table or different records are in both but I want the latest record from either table:
ACCOUNT
AccountID Name
123 John Doe
124 Jane Donaldson
125 Harold Douglas
MARKETER_ACCOUNT
Key AccountID Marketer StartDate EndDate
1001 123 10526 8/3/2008 9/27/2009
1017 123 10987 9/28/2009 12/31/4712 (high date ~ which means currently with this marketer)
1023 124 10541 12/03/2010 12/31/4712
ARCHIVE
Key AccountID Marketer StartDate EndDate
1015 124 10526 8/3/2008 12/02/2010
1033 125 10987 01/01/2011 01/31/2012
So my query needs to return the following:
123 John Doe 10526 8/3/2008 9/27/2009
124 Jane Donaldson 10541 12/03/2010 12/31/4712 (this is the later of the two records for this account between archive and marketer_account tables)
125 Harold Douglas 10987 01/01/2011 01/31/2012 (he is only in archive, so get this record)
I'm unsure how to proceed in one query. Note that I am reading in possibly multiple accounts at a time and returning a collection back to .net
open CURSOR_ACCT
select AccountID
from
ACCOUNT A,
MARKETER_ACCOUNT M,
ARCHIVE R
where A.AccountID = nvl((select max(M.EndDate) from Marketer_account M2
where M2.AccountID = A.AccountID),
(select max(R.EndDate) from Archive R2
where R2.AccountID = A.AccountID)
and upper(A.Name) like parameter || '%'
<can you do a NVL like this? probably not... I want to be able to get the MAX record for that account off the MarketerACcount table OR the max record for that account off the Archive table, but not both>
(parameter could be "DO", so I return all names starting with DO...)if I understand your description I would assume that for John Dow we would expect the second row from marketer_account ("high date ~ which means currently with this marketer"). Here is a solution with analytic functions:
drop table account;
drop table marketer_account;
drop table marketer_account_archive;
create table account (
id number
, name varchar2(20)
insert into account values (123, 'John Doe');
insert into account values (124, 'Jane Donaldson');
insert into account values (125, 'Harold Douglas');
create table marketer_account (
key number
, AccountId number
, MktKey number
, FromDt date
, ToDate date
insert into marketer_account values (1001, 123, 10526, to_date('03.08.2008', 'dd.mm.yyyy'), to_date('27.09.2009', 'dd.mm.yyyy'));
insert into marketer_account values (1017, 123, 10987, to_date('28.09.2009', 'dd.mm.yyyy'), to_date('31.12.4712', 'dd.mm.yyyy'));
insert into marketer_account values (1023, 124, 10541, to_date('03.12.2010', 'dd.mm.yyyy'), to_date('31.12.4712', 'dd.mm.yyyy'));
create table marketer_account_archive (
key number
, AccountId number
, MktKey number
, FromDt date
, ToDate date
insert into marketer_account_archive values (1015, 124, 10526, to_date('03.08.2008', 'dd.mm.yyyy'), to_date('02.12.2010', 'dd.mm.yyyy'));
insert into marketer_account_archive values (1033, 125, 10987, to_date('01.01.2011', 'dd.mm.yyyy'), to_date('31.01.2012', 'dd.mm.yyyy'));
select key, AccountId, MktKey, FromDt, ToDate
, max(FromDt) over(partition by AccountId) max_FromDt
from marketer_account
union all
select key, AccountId, MktKey, FromDt, ToDate
, max(FromDt) over(partition by AccountId) max_FromDt
from marketer_account_archive;
with
basedata as (
select key, AccountId, MktKey, FromDt, ToDate
from marketer_account
union all
select key, AccountId, MktKey, FromDt, ToDate
from marketer_account_archive
basedata_with_max_intervals as (
select key, AccountId, MktKey, FromDt, ToDate
, row_number() over(partition by AccountId order by FromDt desc) FromDt_Rank
from basedata
filtered_basedata as (
select key, AccountId, MktKey, FromDt, ToDate from basedata_with_max_intervals where FromDt_Rank = 1
select a.id
, a.name
, b.MktKey
, b.FromDt
, b.ToDate
from account a
join filtered_basedata b
on (a.id = b.AccountId)
ID NAME MKTKEY FROMDT TODATE
123 John Doe 10987 28.09.2009 31.12.4712
124 Jane Donaldson 10541 03.12.2010 31.12.4712
125 Harold Douglas 10987 01.01.2011 31.01.2012
If your tables are big it could be necessary to do the filtering (according to your condition) in an early step (the first CTE).
Regards
Martin -
I have an itunes account and an ipod, and when I purchased 2 albums on the computer they synced straight to the ipod. I bought an iphone and used the usb cord from the computer to it to sync the itunes albums to the new phone. Everything transfered, and those were albums I had uploaded (not purchased from the itunes store), except the two albmus I just purchased from the itunes store. They appear on my itunes on the computer and ipod, but not on the iphone. What did I fail to do or did I do incorrectly?
This might sound weird, but here's an idea which worked for me re music that was newly added to itunes and showed up in my ipod but wouldn't play - I simply played the tracks in itunes first, just a second of time or so will do it, not the whole track, then connect the ipod and sync again and this time they played - hope this helps.
Maybe you are looking for
-
Java Programming: Any Ideas for breaking a huge class file into smaller ?
Hello Java pros, I have some very huge class files, some with dozens of methods; each method containing an average of a screen-page full of code. Obviously, such huge class files are difficult to maintain inspite of using an IDE, especially when chan
-
I find it quite annoying the large number of read only threads in this forum particularly as, to my mind, very few of them are of any use. I've suggested over in the Idea's Bank that they could at least be reorganised into fewer threads without the l
-
Reversed or swapped frame glitch in clips logged and transferred from GH2
Hi When I log and transfer 24p AVCHD footage from my panasonic GH2 in FCE I'm getting occasional swapped, backwards or reversed frames - it appears as a movement glitch in the final video file. What is happening is that every few minutes, I see this
-
Hi, I'm developing a report in ALV using object oriented ABAP. I want to hide some of the buttons in the tool bar. Can anyone pls help me on this? Thanks
-
Hi all. I have installed a new OES Linux SP1 with iPrint. I have created a ne w Driver Store, when I try to upload a driver from file, all is done and seem is ok ( I get the message that say all is ok), but no drivers appears on the drivers list. If